12.Python使用requests發送post請求

1.咱們使用postman進行接口測試的時候,發現POST請求方式的編碼有3種,具體的編碼方式以下:python

A:application/x-www-form-urlencoded ==最多見的post提交數據的方式,以form表單形式提交數據json

B:application/json    ==以json格式提交數據app

C:multipart/form-data  ==通常使用來上傳文件(較少用)post

2.咱們使用python作接口測試時,常用的方式爲:requests.post(url,data),具體咱們使用不一樣的編碼方式來作接口測試:測試

A:Requests以form表單形式發送post請求,具體代碼實現以下所示:編碼

import requests,json

url = 'http://httpbin.org/post'
data = {'key1':'value1','key2':'value2'}
r =requests.post(url,data)
print(r)
print(r.text)
print(r.content)

A1:運行結果以下所示:url

B:Requests以json形式發送post請求,具體代碼實現以下所示:code

import requests,json

url_json = 'http://httpbin.org/post'
data_json = json.dumps({'key1':'value1','key2':'value2'})   #dumps:將python對象解碼爲json數據
r_json = requests.post(url_json,data_json)
print(r_json)
print(r_json.text)
print(r_json.content)

B1:運行結果以下所示:orm

C:Requests以multipart形式發送post請求,具體代碼實現以下所示:對象

import requests,json

url_mul = 'http://httpbin.org/post'
files = {'file':open('E://report.txt','rb')}
r = requests.post(url_mul,files=files)
print(r)
print(r.text)
print(r.content)

C1:運行結果以下所示:

注:E://report.txt==自定義,具體根據本身放的目錄來定義,內容隨意

相關文章
相關標籤/搜索