Python中的WebSocket创建连接
问题描述:
我有这个服务器Python中的WebSocket创建连接
而且我想与此代码连接到服务器:
ws = create_connection("wss://127.0.0.1:9000")
我需要什么选项添加到create_connection
?添加sslopt={"cert_reqs": ssl.CERT_NONE}
不起作用:
websocket._exceptions.WebSocketBadStatusException: Handshake status 400
答
这工作
import asyncio
import websockets
async def hello():
async with websockets.connect('wss://127.0.0.1:9000',ssl=ssl.SSLContext(protocol=ssl.PROTOCOL_TLS)) as websocket:
data = 'hi'
await websocket.send(data)
print("> {}".format(data))
response = await websocket.recv()
print("< {}".format(response))
asyncio.get_event_loop().run_until_complete(hello())
您是否收到任何错误? – Thomas
是的,websocket._exceptions.WebSocketBadStatusException:握手状态400 – Crone
您正在使用哪个websocket包?如果它是['websocket'](https://pypi.python.org/pypi/websocket),那似乎严重过时了。请尝试['websockets'](https://pypi.python.org/pypi/websockets)或['websocket-client'](https://pypi.python.org/pypi/websocket-client)。 – Thomas