對比urllib,用urllib3處理http請求十分方便,可以嵌入web服務后端用於訪問其它web實例提供的接口
一、安裝
pip install urllib3
二、初始化
導入urllib3
import urllib3
生成manager實例,通過該實例處理請求
http=urllib3.PoolManager()
一個manager可以依次處理多個請求,不需要每次請求前都初始化
三、GET
r=http.request('GET',url)
r.data可以獲取GET請求返回的內容
r.status可以獲取訪問的狀態碼(200等)
將返回的數據轉換為json類型
d = json.loads(r.data.decode())
四、POST
先將POST數據打包為一個字典
data={'userId':user_id}
如果需要發送json類型數據,則需要將data轉換為json數據類型,然后在request的請求頭加上'Content-Type':'application/json'
encoded_data = json.dumps(data).encode('utf-8') http.request('POST','https://www.tiucloud.cn/signedadd', body=encoded_data, headers={'Content-Type':'application/json'})
.encode('urf-8')不能漏,不然轉換出來的數據類型是str
接收請求方可以用
data = json.loads(request.body)
來獲取POST請求body中的數據