【问题标题】:socket io connection working fine in localhost but not when deploying on heroku server套接字 io 连接在 localhost 中工作正常,但在 heroku 服务器上部署时无法正常工作
【发布时间】:2018-10-28 22:22:53
【问题描述】:

当我在 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

【问题讨论】:

  • 其他路线工作正常吗?
  • 是的..其他路线工作正常
  • 检查你的红线错误请求,header中有这个吗? no-referrer-when-downgrade
  • no..."no-referrer-when-downgrade" 没有这样的错误

标签: node.js express heroku socket.io


【解决方案1】:

谢谢大家。

问题已经解决了。

我刚刚删除了端口号。

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

谢谢大家

【讨论】:

    【解决方案2】:

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

    var socket = io();
    

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

    更多信息请参考Socket.IO

    【讨论】:

      猜你喜欢
      • 2013-05-21
      • 2021-10-24
      • 2019-12-29
      • 2018-03-09
      • 2013-03-04
      • 1970-01-01
      • 2021-03-25
      • 2021-03-27
      • 1970-01-01
      相关资源
      最近更新 更多