我一直在使用node.js和socket.io很长一段时间。
我遇到了一个奇怪的问题。在过去,我主要使用长端口--3000,4001,1888等来运行我的节点和套接字服务器。我没有遇到任何问题。
然而,当我将端口移动到80时,我收到以下错误 -
WebSocket握手期间出错:'Connection'标头值不是'升级'
我在Chrome上运行该页面时才会收到此错误消息。我在亚马逊AWS上托管这个应用程序。 它在localhost上工作正常,但是在端口80的生产中出错。
我不认为这与我的代码有任何关系,因为它适用于开发和非80端口。
此外,我观察到套接字通信属于xhr-polling和json-polling。在非80端口上,websockets工作正常。
我不确定这个问题是什么。我在其他浏览器上没有得到相同的错误,但套接字连接也没有发生。
我没有使用nginx或任何其他负载均衡器。