套接字.IO连接没有发生

socket.io connection not heppening

本文关键字:IO 连接 套接字      更新时间:2023-09-26

这是我第一次使用socket.io,我停留在初始阶段。对不起,这可能是个简单的问题。

服务器端代码:

在我的server.js中,我写了以下代码:

var express = require('express')
    ,io=require('socket.io')
    ,http = require('http')
var app = express();
server = http.createServer(app);
io = io.listen(server,{ log: false });

现在我试图在server.js文件内建立连接,就像下面的方式。

io.sockets.on('connection', function (socket) {
    console.log("This is testing");
    io.to(socket.id).emit('notification', 'for your eyes only');
});

客户端代码:

var socket = io.connect("http://localhost");
socket.on('connect', function () {
  console.log("connect")
});
socket.on('notification', function (data) {
  console.log(data);
});

我在浏览器中打开应用程序,根据我的代码,它应该控制台connect声明,但它没有发生。

我的服务器在端口上运行:80我做错了,有人能帮助我吗?

谢谢。

这是我的工作代码,它可能对你有帮助。

 var express        = require('express')
 , app            = express() 
 , server = require('http').Server(app)
 , io = require('socket.io')(server)
 var defaultPort = 6001 ;
 server.listen(defaultPort, function() {
      console.log('Server Started');    
 });

io.sockets.once('connection', function(socket) {   

return io.sockets.emit('new-data', {
        channel: 'stdout',
        value: "Your Data Goes Here"
    });

socket.on('disconnect', function(){
});
});

客户端

  <script>    
$(function() {        
    var socket = io.connect('http://localhost');   //if you are trying on server put server url if you are working on local then use localhost
    socket.on('new-data', function(data) {
            $('#YouDivid').html(data.value);
    });
  });

 </script>