在流式传输 Websocket 时使用 REST API
Use REST API while streaming Websocket
如何在通过 Websocket 流式传输时通过 REST API 请求?
示例:
使用交易所 API.
进行交易的客户端和交易所服务器之间的通信
具体来说,我想使用 REST API 请求发送订单,
然后我想通过私有 Websocket 从交易所接收我的订单信息。
下面是代码。
如果我开始订阅 Websocket(参见 1),它将进入 ws.run_forever()
循环。
2. 如何在ws.run_forever()
循环中执行,以便一旦执行订单我立即收到来自交易所服务器的订单信息?
1。通过 Websocket 进行流式传输
# Subscribing to order information from an exchange via WebSocket API
import json
import websocket
def on_open(self):
message = {
"command": "subscribe",
"channel": "orderEvent"
}
ws.send(json.dumps(message))
def on_message(self, message):
# do something...
endpoint = "url"
ws = websocket.WebSocketApp(endpoint,
on_open=on_open,
on_message=on_message
)
ws.run_forever()
2。通过 REST 发送订单 API
# Sending order
import requests
reqBody = {
"side": BUY,
"amount" : AMOUNT,
}
requests.post("request_url", headers=headers, data=json.dumps(reqBody))
在处理邮件时,您可以决定是否提交订单。这样的东西应该可以工作
def on_message(self, message):
if something:
response = buy_stock(AMOUNT)
def buy_stock(AMOUNT):
reqBody = {
"side": BUY,
"amount" : AMOUNT,
}
r = requests.post("request_url", headers=headers, data=json.dumps(reqBody))
return r
如何在通过 Websocket 流式传输时通过 REST API 请求?
示例:
使用交易所 API.
进行交易的客户端和交易所服务器之间的通信
具体来说,我想使用 REST API 请求发送订单,
然后我想通过私有 Websocket 从交易所接收我的订单信息。
下面是代码。
如果我开始订阅 Websocket(参见 1),它将进入 ws.run_forever()
循环。
2. 如何在ws.run_forever()
循环中执行,以便一旦执行订单我立即收到来自交易所服务器的订单信息?
1。通过 Websocket 进行流式传输
# Subscribing to order information from an exchange via WebSocket API
import json
import websocket
def on_open(self):
message = {
"command": "subscribe",
"channel": "orderEvent"
}
ws.send(json.dumps(message))
def on_message(self, message):
# do something...
endpoint = "url"
ws = websocket.WebSocketApp(endpoint,
on_open=on_open,
on_message=on_message
)
ws.run_forever()
2。通过 REST 发送订单 API
# Sending order
import requests
reqBody = {
"side": BUY,
"amount" : AMOUNT,
}
requests.post("request_url", headers=headers, data=json.dumps(reqBody))
在处理邮件时,您可以决定是否提交订单。这样的东西应该可以工作
def on_message(self, message):
if something:
response = buy_stock(AMOUNT)
def buy_stock(AMOUNT):
reqBody = {
"side": BUY,
"amount" : AMOUNT,
}
r = requests.post("request_url", headers=headers, data=json.dumps(reqBody))
return r