我是 Heroku 新手,我正在尝试部署使用 socket.io 进行监听的 NodeJS 应用程序。 我能够将其部署到本地并且工作正常。但是当在 Heroku 中运行相同的内容时,它没有响应。
我们需要为 Heroku 中的套接字 io 分配任何特定端口吗? 我无法使用 process.env.PORT,因为我将其用于应用程序服务器端口。
有什么办法可以解决这个问题吗?或者我们是否需要启用一些配置才能使用套接字 io?
我认为我们需要 2 个端口,一个用于普通 Express 服务器,另一个用于套接字 io。如何获得第二个。
最佳答案
无法向公众开放超过 80 个端口。但 WebSockets,尤其是 socket.io 应该可以在 heroku 上工作。
您读过这些文章吗:
https://devcenter.heroku.com/articles/node-websockets
socket.io -> https://devcenter.heroku.com/articles/node-websockets#option-2-socket-io
http://robdodson.me/deploying-your-first-node-dot-js-and-socket-dot-io-app-to-heroku/
在端口 80 上使用 Websockets 不是问题,因为协议(protocol)是 ws://(wss://)
并且它可以与 http://(https://) 配合使用/)
并排。
关于node.js - 无法在heroku中使用socket io,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52015496/