0

これは、3 つの POST の Wireshark ログです。すべてが同じデータを投稿しますが、コンテンツ タイプが異なるため、サーバーでのデータの読み取り方法が異なります。POST Z の作成方法を理解しようとしています。

POST X フォームベースの投稿を明示的に設定する

ここに画像の説明を入力

与えるここに画像の説明を入力

POST Y 省略 content-type

ここに画像の説明を入力

与えるここに画像の説明を入力

ポスト Z ? 私のアプリはこれを再現できません。

ここに画像の説明を入力

与えるここに画像の説明を入力

最後の POST Z の content-type を推測しようとしています (括弧がないことに注意してください)。これにより、投稿パラメーターがデータとして表示されます (明らかに data-type なし)。

ありがとう〜B

4

1 に答える 1

1

最後の POST Z の content-type を推測しようとしています (括弧がないことに注意してください)。これにより、投稿パラメーターがデータとして表示されました (明らかに data-type なし)。

コンテンツ タイプはおそらく「なし」です。

POST リクエストで Content-Type: ヘッダーを送信する義務はありません。HTTP 1.1 仕様のRFC 2616では、セクション 7.2.1 の「タイプ」で次のように述べられています。

エンティティ本体を含む HTTP/1.1 メッセージには、その本体のメディア タイプを定義する Content-Type ヘッダー フィールドを含める必要があります。メディア タイプが Content-Type フィールドで指定されていない場合に限り、受信者は、コンテンツの検査および/またはリソースの識別に使用される URI の名前拡張子を介して、メディア タイプの推測を試みることができます (MAY)。メディア タイプが不明のままである場合、受信者はそれを「アプリケーション/オクテット ストリーム」タイプとして扱う必要があります (SHOULD)。

MUST ではなく SHOULD と書かれているため、送信者はContent-Type: ヘッダーなしでエンティティ ボディを送信できます

于 2013-05-07T20:29:23.293 に答える