【问题标题】:socket.io server doesn't work after deployment部署后socket.io服务器不起作用
【发布时间】:2021-10-27 14:33:25
【问题描述】:

我在连接到我的 socket.io 服务器时遇到问题,我希望在 on.connection 时连接用户,这是我的服务器代码

const express = require('express');
const http = require('http');
const socketio = require('socket.io');
const cors = require('cors');
const {getUserList, get_Current_User, user_Disconnect, join_User, playByTurn } = require("./dummyuser");
//Set static folder
const app = express();
app.use(cors());
const server = http.createServer(app);
const io = socketio(server, {
     cors: {
     origin: "http://localhost:8080",
     methods: ["GET","POST"]
                                }
});
const PORT = process.env.PORT || 8000;



//Run when client connect
//Run when client connect
io.on('connection', socket => {
    console.log(`Connected: ${socket.id}`);

   //Code

    });
    socket.on('disconnect', () => {
        console.log(`Disconnected: ${socket.id}`);
       //Code
    })

});

server.listen(PORT, () => console.log(`Server running on port ${PORT}`));

在我的本地主机上它工作得很好,但是在我部署后它说它不能从我的服务器获取,有什么想法吗?谢谢

【问题讨论】:

    标签: node.js heroku deployment socket.io


    【解决方案1】:

    我终于通过在我的客户端代码中添加传输:['websocket'] 解决了这个问题

    import io from 'socket.io-client';
     const socket = io("//url",{
             transports: ['websocket'],
            });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-26
      • 2016-10-04
      • 2021-07-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多