zoukankan      html  css  js  c++  java
  • webpack+socket+node出现的问题

    server端:

     1 const express=require('express');
     2 //创建服务器
     3 const app=express();
     4 const server=require('http').createServer(app);
     5 const io=require('socket.io').listen(server);  //socket
     6 //监听端口号55566,,mysql的链接也要更改
     7 server.listen(55566,(err)=>{
     8     if(err)
     9         throw new err;
    10     else 
    11         console.log('成功监听55566端口。');
    12 });
    13 
    14 io.on('connection',(socket)=>{
    15     //用户登录
    16     socket.on('login',(data)=>{
    17         var sz=data.sz;  //服务区
    18         var username=data.username;  //用户名
    19         if(checkOnline(sz, username)){  //用户在线
    20             //console.log('用户已在线')
    21             socket.emit('isExist',true);
    22         }else{
    23             console.log('登录成功')
    24             //socket.id唯一
    25             socket.sz=sz;
    26             socket.username=username;
    27             socket.emit('isExist',false);
    28         }
    29     });
    30     
    31 
    32     //用户断开连接
    33     socket.on('disconnect',()=>{
    34         //console.log('用户下线')
    35     });
    36 });
    server端写法
    客户
     1 import io from 'socket.io-client';
     2 //建立socket连接
     3     var socket =io.connect('localhost:55566');
     4     socket.on('connect',()=>{
     5         socket.emit('login',{sz:sz,username:username});
     6     });
     7 
     8     //判断用户是否在线
     9     socket.on('isExist',(status)=>{
    10         if(status==true){  //已经在线
    11             alert('this user is online.');
    12             window.location=login_url;
    13         }else{  //不在线
    14             if(typeof(callback)=='function'){
    15                 callback();
    16             }
    17         }
    18     });
    端引用

    浏览器打开时之前总是出现报错:这个问题花了几个小时折腾。

    http://localhost:3000/socket.io/?EIO=3&transport=polling&t=1418187395022-0 404 (Not Found)

    引起原因是由于在客户端使用:

    var socket =io.connect(');引起的,后来将其更改为即可
    本地就用var socket =io.connect('localhost:55566');
    var socket =io.connect(服务器IP地址+':'+端口号);
  • 相关阅读:
    Mysql查询一段时间记录
    exosip2 的简单使用
    oSIP协议栈浅析
    Oracle 11g New 与分区和存储相关的增强功能
    手动配置S2SH三大框架报错(四)
    手动配置S2SH三大框架报错(三)
    手动配置S2SH三大框架报错(二)
    手动配置S2SH三大框架报错(一)
    链表基本操作的实现
    SVN上传项目报错
  • 原文地址:https://www.cnblogs.com/burtyang/p/8493237.html
Copyright © 2011-2022 走看看