【问题标题】:Ubuntu Node js With Socket io Not allowing client to connect带有Socket io的Ubuntu Node js不允许客户端连接
【发布时间】:2020-04-03 09:57:27
【问题描述】:

我正在尝试使用 Nodejs 让 socket.io 在 Ubuntu 中工作。 尝试禁用防火墙,打开端口 3000,4000。

我正在使用 PM2。

部署在 DigitalOcean

现在在我的 Angular 客户端应用程序中出现此错误

我的节点 js 中也设置了核心错误

  client:1 Access to XMLHttpRequest at 'mydomain.com/socket.io/?EIO=3&transport=polling&t=N4_SuJm' 
'Access-Control-Allow-Origin' header is present on the requested resource.

虽然我确实在 AWS ElasticBeanstalk 中发布了相同的代码,但它工作得很好,所以代码没有任何问题


更新

我设法解决了问题

【问题讨论】:

  • 嘿,我认为这是您服务器上的 cors 配置的问题。我建议通过这个digitalocean.com/community/questions/…,因为它似乎是一个 cors 问题,但在有更多错误日志/信息之前我不能确定。
  • 是的,看起来像是一个 cors 问题。
  • 感谢重播,我试过了,但没有用,我可以执行 get/post/delete ...请求只是无法连接到我的套接字 io

标签: node.js ubuntu digital-ocean


【解决方案1】:

更新

我设法解决了问题

供将来参考

问题是 socketio 客户端从 url 中删除了路径 连接 exampledomin.com/api 时给出的是正确的路径 对于 node js 中的 socketio,但 socket io 客户端删除了 /api 和 将它指向 /socketio 所以我在 nginx 配置中添加了一个 Location 到 指向服务器希望这将帮助某人在路上

【讨论】:

    猜你喜欢
    • 2021-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多