如何解决连接到币安 websocket 时出错
我正在尝试连接到币安流,但是当我运行代码时,它输出:“关闭的连接”。我该怎么做才能加入直播?
import websocket
import json
socket = 'wss://fstream.binance.com/ws'
def on_open(ws):
subscribe_message = {"method": "SUBSCRIBE","params":["btcusdt@Trade"],"id": 1}
ws.send(json.dumps(subscribe_message))
def on_message(ws,message):
print("received a message")
print(json.loads(message))
def on_close(ws):
print("closed connection")
ws = websocket.WebSocketApp(socket,on_open=on_open,on_message=on_message,on_close=on_close)
ws.run_forever()
解决方法
欢迎来到stackoverflow
。
通过查看 wss://fstream.binance.com/ws
,我可以看出您正在尝试连接到 Futures API
。
API 文档中明确指出,任何原始流都在 /ws/<streamName>
您没有在 url 中指定 streamName
这就是错误的原因。
只需更改 url 以连接到正确的流,相同的代码应该适用于您:
ws = websocket.WebSocketApp(socket + '/btcusdt@trade',on_open=on_open,on_message=on_message,on_close=on_close)
如果有帮助,请将答案标记为已接受。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。