转换 numpy 数组arr
到 json 时,可以将其序列化,同时保留维度json.dumps(arr.tolist())
。然后在api端,可以解析为np.array(json.loads(arr))
.
但是,当使用请求时json
参数,倾倒和装载为您处理。所以arr.tolist()
是客户端所需要的全部内容,并且np.array(arr)
在 API 上。下面是完整的示例代码。
Client:
params = {'param0': 'param0', 'param1': 'param1'}
arr = np.random.rand(10, 10)
data = {'params': params, 'arr': arr.tolist()}
response = requests.post(url, json=data)
API:
@app.route('/test', methods=['POST'])
def test():
data = request.json
params = data['params']
arr = np.array(data['arr'])
print(params, arr.shape)
return "Success"
Output:
{'param0': 'param0', 'param1': 'param1'} (10, 10)
注意:当files
or data
参数正在使用requests.post
, the json
参数被禁用。