我的应用程序在localhost中运行良好,使用了来自socketockets和xhr-polling的socket.io,并且它正在使用heroku中的xhr-polling,但是由于heroku提供了对websocket的支持,我无法使用websockets进行工作。
我的Chrome控制台会显示以下消息:
WebSocket connection to 'ws://<myherokuapp>.herokuapp.com/socket.io/1/websocket/HBWE2BFvHahlSWk5ppHP' failed: Unexpected response code: 503
我已启用websocket实验室。
是否有使用socket.io的websocket的任何工作示例?
答案 0 :(得分:17)
我遇到了同样的问题,只是通过heroku上的重新激活我应用中的websockets 来修复它。 由于某种原因,它只是随机切换到XHR轮询。
我在heroku的网站(@ https://devcenter.heroku.com/articles/heroku-labs-websockets)中使用此命令重新激活它:
heroku labs:enable websockets -a myapp
然后我通过推送到heroku并重建(或使用:heroku restart
)来重新启动我的服务器。
我还有一个非常基本的socket.io聊天应用程序(由Smitha Milli编写)的工作副本,运行于http://calm-gorge-8474.herokuapp.com/,您可以测试。
希望这有帮助!