我有一个功能:
import json, requests
def pull(command, foo):
headers = {'content-type': 'application/json'}
payload = json.dumps({"method": command, "params": [foo], "jsonrpc": "2.0"})
response = requests.get(serverURL, headers=headers, data=payload)
return(response.json()['result'])
此刻我正在循环(数百万次)。我认为进行多次批量调用比串联执行所有这些调用要快得多。
我似乎找不到任何关于在Python中进行批量RPC调用的文档。
我尝试过:
payload = json.dumps({"method": command, "params": [foo], "jsonrpc": "2.0"},
{"method": command, "params": [foo+1], "jsonrpc": "2.0"})
无济于事。
答案 0 :(得分:0)
答案 1 :(得分:0)
如果没有API的详细信息,我无法确定哪些方法有效,但您可以尝试以下几种方法:
payload = json.dumps([{"method": command, "params": [foo], "jsonrpc": "2.0"},
{"method": command, "params": [foo+1], "jsonrpc": "2.0"}])
或
payload = '\n'.join(json.dumps(x) for x in [
{"method": command, "params": [foo], "jsonrpc": "2.0"},
{"method": command, "params": [foo+1], "jsonrpc": "2.0"}
])