我正在尝试在python中创建以下有效负载以发出POST请求。以下行来自我的浏览器中的REST客户端,并创建了我想要的结果,并且我知道它可以工作。
(URL编码的表单数据)features = [{“ attributes”:{“ POINT_NAME”:“ tpoint”,“ EASTING”:“ 338250”,“ NORTHING”:“ 342300”,“ CREATION_DATE”:“ 16/12/2020”, },“ geometry”:{“ x”:338250,“ y”:342300}}]&f = json
到目前为止,我进行了许多尝试,最接近的尝试如下:
import json
import requests
#Create inner dictionary
data_dictionary = {}
data_dictionary['attributes'] = {"POINT_NAME" : "tpoint", "EASTING" : "338250", "NORTHING" : "342300", "CREATION_DATE" : "16/12/2020"}
data_dictionary['geometry'] ={"x" : 338250, "y" : 342300}
data_list = [data_dictionary]
payload = {"features": data_list , "f" : "json"}
r = request.post(API_ENDPOINT_POINT, data = payload)
r.text
有效负载输出为:{'功能':[{'属性':{'POINT_NAME':'tpoint','EASTING':'338250','NORTHING':'342300','CREATION_DATE':'16 / 12/2020 '},'geometry':{'x':338250,'y':342300}}],'f':'json'},但是当我发出请求时,得到:'{“错误”:{“代码“:500,”消息“:”无法完成操作。“,”详细信息“:[”解析器错误:某些参数无法识别。“]}}'
任何想法都会有所帮助,我被困住了。
谢谢
复制评论的答案:尝试将有效负载用作
payload = {"features": json.dumps(data_list) , "f" : "json"}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句