1.私たちは、テストインタフェース郵便配達を使用してエンコードされたPOSTリクエストを見つけ、次のように三つの方法、特定のコードがあります。
:モードのアプリケーションは、/ x-www-form-urlencodedで==最も一般的なポストは、フォーム形式のフォームで送信されたデータは、データを提出しました
B:アプリケーション/ JSON ==形式のJSONでデータを提出
C:一般(あまり一般的でない)ファイルをアップロードするために使用されるマルチパート/フォームデータ==
2.私たちは、頻繁に使用するPythonインタフェーステスト、使用しないとき:requests.post(URL、データ)を、我々はインターフェイスのテストを行うために別のエンコーディング特定の方法を使用します。
A:次のようにリクエストがフォームフォームフォームをポストする要求を送信し、特定のコード実装です。
1
2
3
4
5
6
7
8
|
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:実行結果は以下の通りであります:
B:次のようにリクエストはJSONポストリクエストフォームを送信し、特定のコード実装です。
1
2
3
4
5
6
7
8
|
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:実行結果は以下の通りであります:
C:リクエストがマルチパートフォームをポストする要求を送信し、次のように、特定のコード実装です。
1
2
3
4
5
6
7
8
|
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==カタログの彼らの特定の場所に応じて定義されたカスタム、コンテンツを自由に