我有一个龙卷风服务器在端口9000上侦听,但是当我尝试从websocket-client创建连接时,出现以下错误。
Traceback (most recent call last):
File "XXX", line 879, in custom_func
ws = create_connection("ws://127.0.0.1:9000/")
File "/usr/local/lib/python2.7/dist-packages/websocket.py", line 110, in create_connection
websock.connect(url, **options)
File "/usr/local/lib/python2.7/dist-packages/websocket.py", line 210, in connect
self._handshake(hostname, port, resource, **options)
File "/usr/local/lib/python2.7/dist-packages/websocket.py", line 246, in _handshake
raise WebSocketException("Handshake Status %d" % status)
WebSocketException:握手状态426
在龙卷风中,426表示需要升级。我已经升级了客户端,但是仍然遇到相同的错误。
这是我的点冻结:
tornado==3.1
websocket-client==0.4
我正在使用以下导入:
from websocket import create_connection
最佳答案
Here您会看到websocket-client
实现了Websocket协议草案76。
另外,请注意0.4已有三岁了。 0.12是最新版本。
This是您从那里获取426的地方。
您需要重写WebSocketHandler.allow_draft76方法。