本文主要是介绍python 使用urllib3发起post请求,携带json参数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
当通过python脚本,发起http post请求,网络上大多是通过fields传递数据,然而这样,服务器收到的请求,但无法解析json数据。类似这些链接:
Python urllib3库使用指南
软件测试|Python urllib3库使用指南
python发起网络请求模块【requests、selenium、urllib、urllib3】
里面大多采用fields传递数据,但这样,服务器无法解析,特别是解析json的接口。
所以field应该有做它用,但不是传递json数据的。
import urllib3http = urllib3.PoolManager()data = {'name': 'theshy','team': 'wbg'
}url = "https://www.baidu.com"
response = http.request('POST', url, fields=data)print(response.data)
在request方法中,通过json字段传递数据,而且不需要手动json.dumps,这样请求,服务器是能解析json数据的。
import urllib3
http = urllib3.PoolManager()
back = {'result': True, 'perModelId': 98, 'message': "成功"}
http.request(
'POST',"192.168.100.127/model/download",
headers={'Content-Type':'application/json'},json=back)
这篇关于python 使用urllib3发起post请求,携带json参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!