socket io连接在localhost中正常工作,但在heroku服务器上部署时却没有

时间:2018-05-18 13:02:42

标签: node.js express heroku socket.io

当我在localhost上运行我的代码时,它运行正常,但在heroku上部署后显示错误(GET错误) 这是我的代码

服务器端代码

app = express()
app.listen(app.get('port'), function() {
  console.log('Node app is running on port..', app.get('port'));
});
var server = app.listen(4200);
var io = require('socket.io')(server);
io.on('connect',(socket)=>{
    console.log('connected..........');
})

客户端代码

private socket = io('My-Heroku-server-address:4200');

错误

 https:My-Heroku-server-address:4200/socket.io/?EIO=3&transport=polling&t=MDpJszb

2 个答案:

答案 0 :(得分:0)

而不是像private socket = io('My-Heroku-server-address:4200');那样在客户端代码中指定要连接的URL,而不是

var socket = io();

这将尝试连接到为页面提供服务的主机。

有关详细信息,请参阅Socket.IO

答案 1 :(得分:0)

谢谢大家。

问题已经解决。

我刚删除了端口号

    private socket = io('My-Heroku-server-address');

全部谢谢