javascript - Socket.io 连接始终为 false

标签 javascript node.js sockets socket.io

我的socket.connected 始终是false,也无法发送或接收消息。

app.js

var app = require('./config/server');    
var http = require('http').Server(app);
var io = require("socket.io")(http);

http.listen(80, function(err)
{
    console.log(err);
    console.log('Server client instagram_clone_v01 online');
});

io.sockets.on('connection', function (socket)
{
    console.log("new user connected");
});

server side

var sockets = io();
sockets.on('connection', function ()
{
    console.log("connected");
    sockets.emit("newPhoto");
});

client side

const socket = io.connect("http://localhost:80");
console.log(socket.connected);

socket.on('error', function()
{
    console.log("Sorry, there seems to be an issue with the connection!");
});

socket.on('connect_error', function(err)
{
    console.log("connect failed"+err);
});

socket.on('connection', function ()
{
    console.log("connected");
    socket.on('newPhoto',function()
    {
        load_posts();
    });
});

没有任何“on收到,甚至没有“error”。那么我怎样才能让它发挥作用呢?

最佳答案

我已经在本地检查了你的代码。

所以问题是你正在检查:.on('connection',...) 应该是 .on('connect', ...)

所以尝试这个修复:

socket.on('connect', function() {
  console.log("Connected to WS server");

  console.log(socket.connected); 

  load_posts();
});

socket.on('newPhoto', function(){
  load_posts();
});

关于javascript - Socket.io 连接始终为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53112112/

相关文章:

php - 浏览器不立即显示收到的套接字数据

javascript - AR.js 多个标记失败

javascript - Chrome/Safari 图片加载器,首次打开

javascript - 如何停止 mongoose/javascript 向数组添加空值?

node.js - express -s 不工作

javascript - Node.js 和 Socket.io 创建房间

c - (如何)我可以减少套接字延迟吗?

javascript - componentWillRecieveProps 当前 props

node.js - Dockerizing Node.js 应用程序 - : ENV PATH/app/node_modules/. bin:$PATH 是什么

javascript - NodeJs - Controller 内的异步/等待