Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python httplib2-无法获得成功响应 JSON数据没有成功响应,而是空引用_Python_Json_Python 3.6_Httplib2 - Fatal编程技术网

Python httplib2-无法获得成功响应 JSON数据没有成功响应,而是空引用

Python httplib2-无法获得成功响应 JSON数据没有成功响应,而是空引用,python,json,python-3.6,httplib2,Python,Json,Python 3.6,Httplib2,我试图通过Python httplib2库在云中调用.NETAPI 邮递员的电话也很好,但它没有通过这个图书馆给我提供数据。如果我在PostMan中将内容类型更改为application/xml,那么我会在那里得到这个响应。与邮递员相比,我尝试在不同的可能性中调整标题。没有任何帮助。我还不能通过Fiddler跟踪这些调用(与PostMan调用相比),因为我必须设置代理。我已经通过React与这个api进行了接口,它使用了相同的头和体,并且工作得很好 content_headers = {'Acc

我试图通过Python httplib2库在云中调用.NETAPI

邮递员的电话也很好,但它没有通过这个图书馆给我提供数据。如果我在PostMan中将内容类型更改为application/xml,那么我会在那里得到这个响应。与邮递员相比,我尝试在不同的可能性中调整标题。没有任何帮助。我还不能通过Fiddler跟踪这些调用(与PostMan调用相比),因为我必须设置代理。我已经通过React与这个api进行了接口,它使用了相同的头和体,并且工作得很好

content_headers = {'Accept': 'application/json',
               'Content-Type': 'application/json'}
url = ('http://XXXXX')
body_data = {
        "store": 123,
        "UPC": 4011
             }
h = httplib2.Http()
response, data = h.request(url, 'POST', body=urllib.parse.urlencode(body_data), headers=content_headers)
答复:

{'cache-control':'no cache','pragma':'no cache','content type':'application/json;charset=utf-8','expires':'1','server':'Microsoft IIS/10.0','x-aspnet-version':'4.0.30319','x-powered-by':'ASP.NET','date:'2018年5月3日18:09:57 GMT','content length':'114','status':'200}

数据:


{'ResultCode':-1000,'ResultDescription':'对象引用未设置为对象的实例','pludetails':None}

尝试使用
请求
,这是一个很棒的Python库。您的代码应该是:
resp=requests.post(url=url,json=body_data)
并使用
resp.json()提取答案。
我想您应该将请求正文设置为
json.dumps(body_data)
在查看其他地方的不同响应和更改后,没有成功,我开始使用请求库而不是httplib2。到目前为止,我还没有遇到任何问题。