ホームページ  >  記事  >  ウェブフロントエンド  >  投稿でファイルとテキストのアップロードをリクエストする場合は http 形式

投稿でファイルとテキストのアップロードをリクエストする場合は http 形式

一个新手
一个新手オリジナル
2017-09-27 10:25:104049ブラウズ

サーバーは通常、リクエストのメッセージ本文がリクエストヘッダーのContent-Typeフィールドに基づいて*エンコーディング*される方法を学習し、その後本文を解析します。したがって、POST 送信データ スキームには、Content-Type とメッセージ本文のエンコード方式という 2 つの部分が含まれます。

application/x-www-form-urlencoded

最も基本的な

フォームフォーム構造、文字パラメーターを渡すために使用されるキーと値のペア、リクエスト構造は次のとおりです

POST  HTTP/1.1Host: www.demo.comCache-Control: no-cachePostman-Token: 81d7b315-d4be-8ee8-1237-04f3976de032Content-Type: application/x-www-form-urlencodedkey=value&testKey=testValue

リクエストヘッダーのContent-Type application /x-www-form-urlencoded に設定されます。送信されたデータは key1=value1&key2=value2 に従ってエンコードされます。キーと値は両方とも

urlEncode;

multipart/form-data

である必要があります。ファイルをアップロードするときは、データを送信する最も一般的な方法です。リクエスト構造を見てください

POST  HTTP/1.1Host: www.demo.comCache-Control: no-cachePostman-Token: 679d816d-8757-14fd-57f2-fbc2518dddd9Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="key"value------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="testKey"testValue------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="imgFile"; filename="no-file"Content-Type: application/octet-stream<data in here>------WebKitFormBoundary7MA4YWxkTrZu0gW--

まず第一に、リクエストヘッダーの

Content-Typeはmultipart/form-dataであり、境界が生成されます。リクエスト本文内の各 を区別するための Data; 各データは –boundary で始まり、その後に content description 情報が続き、その後に –boundary- が続きます。最後に改行; テキストデータとファイル、画像の内容説明は異なりますテキストパラメータ:

Content-Disposition: form-data; name="key"Content-Type: text/plain; charset=UTF-8Content-Transfer-Encoding: 8bit

ファイルパラメータ:

Content-Disposition: form-data; name="imgFile"; filename="no-file"Content-Type: application/octet-streamContent-Transfer-Encoding: binary

各改行はrn;

application/json

text/xml

text/plain

リクエストヘッダーの内容 -Type をこれらに設定することも非常に一般的ですが、一般に Web フロントエンド開発では、リクエストボディは固定された構造を持たず、対応するデータストリームが存在します。データは直接送信されます。上記の 2 つと同じである必要はなく、データが json、xml、および text に対応している必要があります。

以上が投稿でファイルとテキストのアップロードをリクエストする場合は http 形式の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。