这两个都可以用来请求服务,给服务一些数据,获得服务的返回值。
1. curl的代码
我当时用的是curl代码是:
看到curl的参数有:-H -i --data,分别对应:Header,服务的IP的地址,请求的数据。
$ curl -X POST
-H 'Content-Type: application/json'
-i 'http://192.168.7.1:8059/federation/v1/inference'
--data '{"head": {"serviceId": "test"},
"body": {
"featureData": {
"x0": 0.254879,
"x1": -1.046633,
"x2": 0.209656,
"x3": 0.074214,
"x4": -0.441366,
"x5": -0.377645,
"x6": -0.485934,
"x7": 0.347072,
"x8": -0.287570,
"x9": -0.733474
},
"sendToRemoteFeatureData": {"id": "123"}
}
}'
2. 相应的python代码
curl:-H ————> requests.post : headers;
curl: -i ————> requests.post : url;
curl:–data ————> requests.post : data;(有的资料说用params,我这里用params不行);
import requests
url="http://192.168.7.1:8059/federation/v1/inference"
post_data={
"head": {"serviceId": "test" },
"body": {
"featureData": {
"x0": 0.254879,
"x1": -1.046633,
"x2": 0.209656,
"x3": 0.074214,
"x4": -0.441366,
"x5": -0.377645,
"x6": -0.485934,
"x7": 0.347072,
"x8": -0.287570,
"x9": -0.733474
},
"sendToRemoteFeatureData": {"id": "123"}
}
}
headers={'Content-Type': 'application/json'}
return_=requests.post(url,headers=headers, data = json.dumps(post_data))
3. 其他——返回值结果解析成字典
上述requests.post返回的内容解析成字典
return_=json.loads(return_.content.decode())