実行時に、「HTTP: 要求の POST (HTTP Post Request)」アクティビティーは、 HTTP/HTTPS 1.1 プロトコルに準拠した HTTP 要求を HTTP サーバーに送信します。
「HTTP: 要求の POST (HTTP Post Request)」アクティビティーの圧縮/圧縮解除のランタイム動作は、 以下の条件に依存します。
次に、これらの条件が「HTTP: 要求の POST (HTTP Post Request)」アクティビティーの圧縮/圧縮解除ランタイム動作に与える影響について説明します。『ランタイムの圧縮/圧縮解除動作』セクションの表にも説明があります。
統合アプライアンスでは、最初の HTTP 要求を圧縮形式で HTTP エンドポイント (HTTP サーバー) に送信するときに、HTTP エンドポイントが圧縮をサポートするかどうかを判断します。HTTP サーバーが、圧縮をサポートしない、あるいは指定した Content-Encoding タイプをサポートしないというエラー・コードを返す場合、統合アプライアンスは最初の要求を非圧縮形式で再送し、このエンドポイントへの以後の要求はすべて非圧縮形式で送信されます。 さらに、HTTP サーバーが送信する HTTP 応答は、統合アプライアンスが受信するときには圧縮解除されていません。
圧縮/圧縮解除のエンドポイント・サポートは、『ランタイムの圧縮/圧縮解除動作』セクションに記載されている表の第 4 列 (「エンドポイントは圧縮をサポートしますか?」というラベル) に示されます。
HTTP 要求の Content-Encoding ヘッダーの値によって、 要求の本体が圧縮されているかどうかと、使用されているエンコードのタイプがわかります。 例えば、Content-Encoding が deflate に等しい場合、統合アプライアンスは、要求の本体を deflate 形式で圧縮して送信します (『要求送信時の圧縮動作』というラベルが付いた以下の最初の表の第 2 行と、次の図を参照)。
要求の Accept-Encoding ヘッダーおよび Content-Encoding ヘッダーの値は、「HTTP: 要求の POST (HTTP Post Request)」アクティビティーの「入力のマップ」タスクのオプションの httpheaders 入力パラメーターに、名前と値のペアで明示的に設定できます。例えば、 Content-Encoding を deflate に設定するには、 オプションの httpheaders 入力パラメーターに、次の名前と値のペアを設定します。
要求の Accept-Encoding ヘッダーおよび Content-Encoding ヘッダーにサポートされていない値が設定されている場合や、値がまったく設定されていない場合は、以下の表に示すように、デフォルト値が提供されます。
要求内の Accept-Encoding ヘッダーおよび Content-Encoding ヘッダーの値は、統合アプライアンスと HTTP サーバーが圧縮/圧縮解除動作を判別する際に使用されます。
デフォルトでは、圧縮と圧縮解除は「HTTP: 要求の POST (HTTP Post Request)」アクティビティーのアクティビティー・レベルでオンになっています。アクティビティー・レベルで圧縮/圧縮解除をオフにするには、「圧縮/圧縮解除の使用」チェック・ボックスの選択を解除します。 「圧縮/圧縮解除の使用」チェック・ボックスは、アクティビティーの「構成」タスクで使用できます。 『ランタイムの圧縮/圧縮解除動作』セクションに記載されている以下の表で「圧縮/圧縮解除の使用」チェック・ボックス」というラベルの付いた第 2 列が、 「圧縮/圧縮解除の使用」チェック・ボックスの設定を示しています。
『要求送信時の圧縮動作』セクションに記載の最初の表は、統合アプライアンスが HTTP サーバーに HTTP 要求を送信する際のランタイムの圧縮動作を示しています。
『要求に渡される Accept-Encoding ヘッダー値』セクションに記載の 2 番目の表は、HTTP 要求に渡される Accept-Encoding ヘッダーの値を示しています。
『応答受信時の圧縮解除動作』セクションに記載の 3 番目の表は、統合アプライアンスが HTTP サーバーから HTTP 要求を受信する際のランタイムの圧縮解除動作について説明しています。
圧縮/圧縮解除の使用チェック・ボックス (アクティビティー・レベル) | HTTP 要求の Content-Encoding 値 (メッセージ・レベル) | エンドポイントは圧縮をサポートしますか? | 要求送信時の統合アプライアンスのランタイム圧縮動作 |
選択 | gzip、設定しない、あるいは deflate または ID 以外の任意のストリング | はい | 統合アプライアンスは、gzip 形式で圧縮した要求本体を送信します。 Content-Encoding ヘッダーは、要求では gzip に設定されます。 |
選択 | deflate | はい | 統合アプライアンスは、deflate 形式で圧縮した要求本体を送信します。 Content-Encoding ヘッダーは、要求では deflate に設定されます。 |
選択 | ID | はい | 統合アプライアンスは、非圧縮の要求本体を送信します。 Content-Encoding ヘッダーは、要求では ID に設定されます。 |
選択 | 値は無効 | いいえ | 統合アプライアンスは、非圧縮の要求本体を送信します。 Content-Encoding ヘッダーは、要求では ID に設定されます。 |
クリア | 値は無効 | 値は無効 | 統合アプライアンスは、要求本体を現状のまま (変更せずに) 送信します。Content-Encoding ヘッダーの現行値は、 現状のまま要求に渡されます。 |
圧縮/圧縮解除の使用チェック・ボックス (アクティビティー・レベル) | Accept-Encoding の初期値 | エンドポイントは圧縮をサポートしますか? | HTTP 要求でサーバーに渡される Accept-Encoding の値 |
選択 | gzip | はい | Accept-Encoding ヘッダーは、要求では gzip に設定されます。 |
選択 | deflate | はい | Accept-Encoding ヘッダーは、要求では deflate に設定されます。 |
選択 | gzip,deflate | はい | Accept-Encoding ヘッダーは、要求では gzip,deflate に設定されます。 |
選択 | deflate,gzip | はい | Accept-Encoding ヘッダーは、要求では deflate,gzip に設定されます。 |
選択 | ID | はい | Accept-Encoding ヘッダーは、要求では ID に設定されます。 |
選択 | 設定しない、あるいは deflate、gzip、ID 以外の任意のストリング | はい | Accept-Encoding ヘッダーは、要求では gzip,deflate に設定されます。 |
選択 | 値は無効 | いいえ | Accept-Encoding ヘッダーの現行値は、 現状のまま要求に渡されます。 |
クリア | 値は無効 | 値は無効 | Accept-Encoding ヘッダーの現行値は、 現状のまま要求に渡されます。 |
圧縮/圧縮解除の使用チェック・ボックス (アクティビティー・レベル) | HTTP 応答の Content-Encoding 値 (メッセージ・レベル) | エンドポイントは圧縮をサポートしますか? | 応答受信時の統合アプライアンスのランタイム圧縮解除動作 |
選択 | gzip | はい | 統合アプライアンスは、gzip 形式を使用して、応答本体を圧縮解除します。 |
選択 | deflate | はい | 統合アプライアンスは、deflate 形式を使用して、応答本体を圧縮解除します。 |
選択 | ID | はい | 統合アプライアンスは応答の本体を圧縮解除しません。 |
選択 | Accept-Encoding ヘッダーにリストされない値 | はい | 統合アプライアンスは、応答データが非送信請求コンテンツのエンコード・タイプで受信されたというエラーをログに記録します。 |
選択 | 値は無効 | いいえ | 統合アプライアンスは応答の本体を圧縮解除しません。 Content-Encoding ヘッダーの現行値は、現状のまま応答に渡されます。 |
クリア | 値は無効 | 値は無効 | 統合アプライアンスは応答の本体を圧縮解除しません。Content-Encoding ヘッダーの現行値は、現状のまま応答に渡されます。 |