HTTPRequest ノードを使用して、Web サービスと対話します。
このトピックには、以下のセクションが含まれています。
入力メッセージのすべてまたは一部を Web サービスに送信された要求として使用して、HTTPRequest ノードは Web サービスと対話します。 メッセージをメッセージ・フロー内の後続のノードに伝搬する前に、Web サービス応答の内容を追加した入力メッセージの内容を使用して出力メッセージを作成するよう、ノードを構成することもできます。
構成に応じて、このノードは、入力メッセージの特定の内容から HTTP または HTTP over SSL (HTTPS) 要求を構成し、この要求を Web サービスに送信します。 ノードは、Web サービスから応答を受信し、出力ツリーで組み込むために応答の内容を構文解析します。 構成で必要な場合、ノードは HTTP ヘッダーを生成します。
このノードは、HTTPInput ノードまたは HTTPReply ノードが入っているかどうかにかかわらず、メッセージ・フローで使用できます。
HTTPRequest ノードは、次のメッセージ・ドメインのメッセージを処理します。
HTTPRequest ノードはパレットの HTTP ドロワーに入っていて、WebSphere® Message Broker Toolkit 内では次のアイコンによって表されます。
URL は、http://<address>[:<port>]/<function> の形式です。例えば、http://localhost:7080/request などです。 この URL は、メッセージ自体のフィールドとして、またはローカル環境のフィールドとして、HTTPRequest ノード・パラメーターで静的に指定できます。 Web サービスに送信されるデータは、HTTPRequest ノード・プロパティーでの指定どおり、メッセージ・ツリーの全体または一部にすることができます。
データは、大半の要求の場合、CCSID 1208 の形式で作成されている必要があります。 応答は、入力メッセージを置換するか、メッセージ・ツリーに挿入することができます。位置は、HTTPRequest ノード・パラメーターに指定されます。 応答のドメインは、XMLNS です。 要求が成功した場合、HTTPResponse は、メッセージ・ツリーの前に挿入され、応答はツリーの指定された位置に配置され、要求は Out ターミナルに伝搬されます。 HTTPRequest ノードが要求を発行できない場合は、ExceptionList がメッセージ・ツリーに挿入され、ツリーは Failure ターミナルに伝搬されます。
Set OutputRoot.XMLNS.error850 = CAST(InputRoot.XMLNS.error.BLOB as CHAR CCSID 850);
HTTP については、Hypertext Transfer Protocol - HTTP/1.1を参照してください。
HTTP 戻りコードについて詳しくは、HTTP 応答コードを参照してください。タイムアウト・インターバルを指定して、要求が指定した期間よりも長い時間を要した場合、要求を Failure ターミナルに伝搬して、適切なメッセージを表示させることができます。 HTTPRequest ノードが処理する要求ごとに、接続を開いて、応答が戻ったら閉じます。 タイムアウト・インターバルが指定された場合、ソケットはインターバルの後に閉じられます。 このように閉じることによって、要求が正しい応答のみを取得し、タイムアウトになった要求の応答データをすべて廃棄させることができます。
HTTP プロキシーを使用することで、中間サイトを介して要求をルーティングすることができます。ツールをプロキシーとして実行すると、要求と応答を確認できるので、フローのデバッグが可能になります。 HTTP 宛先は、プロキシーによって確認されます。ローカル・ホストの HTTP 宛先を指定して、HTTP プロキシーが異なるコンピューター上で実行中の場合は、要求は元の要求の発行元であるコンピューターではなく、リモート・プロキシー・コンピューターにルーティングされます。
HTTPRequest ノードは、HTTP 要求を送信する必要のあるどのメッセージ・フローにおいても使用できます。 最も一般的な例は、Web サービスを呼び出すメッセージ・フローです。
Web サービスについて詳しくは、Web サービス・メッセージの処理を参照してください。
このノードは TCP/IP を使用して外部サービスと直接対話するので、次のタイプのエラーが発生する可能性があります。
ノードがこれらのエラーを検出する場合、例外が生成され、受信したエラー情報が例外リストに取り込まれ、入力メッセージは未変更のまま、Failure ターミナルにルーティングされます。
ノードは応答がどのような形式になるかを判別できないため、応答は BLOB メッセージとして作成されます。 転送を処理するようにこのノードを構成していない場合、転送状況コード (3xx) 付きのメッセージも同様に処理されます。
HTTPRequest ノードは、100 番台の状況コードを「続き」の応答として扱い、現在の応答を破棄して、Web サーバーからの別の応答を待機します。
200 番台の状況コードは成功として扱われ、生成される出力メッセージの形式は、ノード上の各種のタブの設定によって決定され、そして応答はノードの Out ターミナルにルーティングされます。
300 番台の状況コードは転送用です。 「HTTP(S) 転送を使用」プロパティーを選択した場合、ノードは、受け取った応答で指定されている新しい宛先に要求を再送信します。 「HTTP(S) 転送を使用」プロパティーを選択していない場合、コードは、HTTPRequest ノードを使用した Web サービスへの要求発行で説明されているとおりにエラーとして扱われます。 HTTP 戻りコードについて詳しくは、HTTP 応答コードを参照してください。
400 番台および 500 番台の状況コードはエラーであり、HTTPRequest ノードを使用した Web サービスへの要求発行で説明されているとおりに扱われます。 HTTP 戻りコードについて詳しくは、HTTP 応答コードを参照してください。
「入力メッセージを Web サービス応答で置換」、または「入力をエラーで置換」を選択した場合、入力メッセージ用のヘッダー (HTTPRequest ノードの In ターミナルにメッセージが着信するときにメッセージに属するヘッダー) は、HTTPRequest ノードから発信されるメッセージと一緒に伝搬されません。 ただし、メッセージ・ツリー内の位置を指定するプロパティーのいずれかが指定されている場合、入力メッセージのヘッダーは伝搬されます。
リモート Web サービスによって戻されるヘッダーを添付された HTTPResponse ヘッダーは、ノードから伝搬されるメッセージ内の最初のヘッダー (プロパティーの後) です。 選択したオプションに関係なく、このアクションがとられます。 したがって、HTTPRequest ノードからの応答を WebSphere MQ キューに入れる場合、MQMD が (プロパティーの後の) 最初のヘッダーになるようにヘッダーを操作します。
入力メッセージを応答と置き換える場合、HTTPRequest ノードの前に入力メッセージの MQMD を Environment ツリーにコピーし、HTTPRequest ノードの後にそれをメッセージ・ツリーにコピーして戻すことができます。 応答の位置を指定する場合、既存の入力メッセージ・ヘッダーを維持するために、MQMD が最初のヘッダーとなるように HTTP 応答ヘッダーを移動または除去する必要があります。
SET OutputRoot = InputRoot;
SET OutputRoot.HTTPResponseHeader = NULL;
SET OutputRoot = InputRoot;
DECLARE HTTPHeaderRef REFERENCE TO OutputRoot.HTTPResponseHeader;
DETACH HTTPHeaderRef;
ATTACH HTTPHeaderRef TO OutputRoot.MQMD AS NEXTSIBLING;
HTTPRequest ノードのインスタンスをメッセージ・フローに入れると、そのノードを構成することができます。メッセージ・フロー・ノードの構成を参照してください。 ノードのプロパティーが、「プロパティー」ビューに表示されます。
値を入力する必要のあるすべての必須プロパティーには、アスタリスクが表示されます。
以下のように、HTTPRequest ノードを構成します。
最初の 2 つのオプションでは、入力メッセージがメッセージ・フローを通過するたびに URL を設定するという、動的方式が可能です。 これらのオプションのどちらかを使用するには、メッセージ・フローの中の HTTPRequest ノードの前に Compute ノードを組み込み、必要な値の作成と初期化を行います。
3 番目のオプションでは、このノードが受信するすべてのメッセージで値が固定します。 このプロパティーは、残りのフィールドが作成されていない場合やヌル値である場合に使用されるデフォルト設定を含むように設定します。 どちらかのフィールドに値がある場合、このプロパティーの設定は無視されます。 「Web サービス URL」プロパティーには、有効な URL が入っていなければなりません。そうでない場合、デプロイは失敗します。 X-Original-HTTP-URL または LocalEnvironment.Destination.HTTP.RequestURL に設定した値が有効な URL であることも確認します。これが有効でない場合、ノードは「Web サービス URL」プロパティーのデフォルト設定を使用します。
URL の先頭が http:// の場合、要求ノードは HTTP 要求を、指定の URL にします。 URL の先頭が https:// の場合、要求ノードはノードの「SSL」タブで指定されたパラメーターを使用して、HTTP over SSL (HTTPS) 要求を、指定の URL にします。
「HTTP バージョン」プロパティー値として 1.1 を選択する場合、「HTTP/1.1 キープアライブを使用可能にする」を選択することもできます。
状況により、ユーザー定義のパーサーを指定することもできます。
入力メッセージの内容の一部を使用して、Web サービス・エラー・メッセージを出力メッセージに組み込む場合、「入力をエラーで置換」のチェックを外して、「エラー・メッセージの位置」プロパティーを設定します。 このプロパティーをクリアした場合、ノードは入力メッセージを出力メッセージにコピーし、指定された位置で、Web サービス・エラー・メッセージを出力メッセージに上書きします (入力メッセージ自体は変更されません)。
リファレンス内の式、および新規フィールド・リファレンス (応答用にメッセージ・ツリー内にノードを作成するため) を含む、任意の有効な ESQL フィールド・リファレンスを入力できます。 例えば、以下のように入力します。
OutputRoot.XMLNSC.ABC.DEF
または Environment.WSError
「入力をエラーで置換」を選択した場合、このプロパティーは無視されます。
要求メッセージに入力メッセージのサブセットを入れる場合は、「入力メッセージ全体を要求として使用」のチェックを外して「ツリー内の要求メッセージ位置」プロパティーを設定します。
リファレンス内の式を含む、任意の有効な ESQL フィールド・リファレンスを入力することができます。 例えば、以下のように入力します。
InputRoot.XMLNSC.ABC
「入力メッセージ全体を要求として使用」を選択した場合、このプロパティーは無視されます。
適切なメッセージ・ツリーの内容を構文解析してビット・ストリームを作成するとき、入力メッセージの本体に関連付けられ、「プロパティー」フォルダーに保管されているメッセージ・プロパティー (メッセージ・ドメイン、メッセージ・セット、メッセージ・タイプ、およびメッセージ形式) が使用されます。
入力メッセージの内容の一部と一緒に、Web サービス応答メッセージを出力メッセージに組み込む場合、「入力メッセージを Web サービス応答と置換」のチェックを外して、「ツリー内の応答メッセージ・ロケーション」プロパティーを設定します。 このプロパティーをクリアした場合、ノードは入力メッセージを出力メッセージにコピーし、指定された位置で、Web サービス応答メッセージを出力メッセージに上書きします (入力メッセージ自体は変更されません)。
リファレンス内の式、および新規フィールド・リファレンス (応答用にメッセージ・ツリー内にノードを作成するため) を含む、任意の有効な ESQL フィールド・リファレンスを入力できます。 例えば、以下のように入力します。
OutputRoot.XMLNSC.ABC.DEF
または Environment.WSReply
「入力メッセージを Web サービス応答と置換」を選択した場合、このプロパティーは無視されます。
応答ビット・ストリームを構文解析してメッセージ・ツリーの内容を作成すると、ノードの応答メッセージの構文解析プロパティーに指定したメッセージ・プロパティー (メッセージ・ドメイン、メッセージ・セット、メッセージ・タイプ、およびメッセージ形式) が使用されます。
ノードが要求メッセージに対して HTTPRequestHeader を生成しないようにする場合は、「入力からデフォルト HTTP ヘッダーを生成」のチェック・マークを外します。 要求メッセージに組み込む HTTPRequestHeader の内容を制御するには、入力メッセージに HTTPRequestHeader を追加するための Compute ノードを、メッセージ・フローの中のこの HTTPRequest ノードの前の位置に組み込み、このチェック・ボックスのチェック・マークを外してください。
HTTPRequestHeader または HTTPInputHeader に Web サービス・ヘッダーがない場合には、HTTPRequest ノードは、デフォルト値を使用して、次の表に示されている Web サービス・ヘッダーも追加します。
ヘッダー | デフォルト値 |
---|---|
SOAPAction | "" (空ストリング) |
Content-Type | text/xml; charset=ccsid of
the message body ただし、入力メッセージが JSON ドメインにある場合、デフォルトは次のとおりです。 application/json; charset=ccsid of the message body |
Host | 要求の送信先のホスト名 |
HTTPRequestHeader または HTTPInputHeader にオプションのヘッダー Content-Length の値がない場合でも、HTTPRequest ノードは、正しい計算値を使用して、このヘッダーも追加します。
詳細については、メッセージの妥当性検査および妥当性検査プロパティーを参照してください。
メッセージをさらに処理したり、エラーを処理したり、あるいはメッセージを追加の宛先に送信するには、このノードの Out ターミナル、Error ターミナル、または Failure ターミナルをこのメッセージ・フローの別のノードに接続します。 Error ターミナルを接続していない場合、メッセージは廃棄されます。 Failure ターミナルに接続していない場合、ブローカーはデフォルトのエラー処理を行います。詳細については、『メッセージ・フローのエラー処理』を参照してください。
HTTPRequest ノードのターミナルについては、次の表に説明されています。
ターミナル | 説明 |
---|---|
In | ノードが処理するメッセージを受け入れる入力ターミナル。 |
Failure | ノード内の処理で障害が検出された場合に、メッセージがルーティングされる出力ターミナル。 |
Out | Web サービス要求が正常終了したことが示され、なおかつこのメッセージ・フロー内でさらに処理が必要な場合にメッセージがルーティングされる出力ターミナル。 |
Error | プロパティー「HTTP(S) 転送を使用」を設定していない場合に、200 から 299 の範囲にない HTTP 状況コード (転送コード (3xx) を含む) を含んだメッセージの送信先となる出力ターミナル。 |
以下の表は、ノード・プロパティーについて説明しています。 M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、パネル上にアスタリスクのマークが付きます)。 C の見出しの列は、プロパティーが構成可能 (メッセージ・フローをブローカー・アーカイブ・ファイルに追加してデプロイするとき、値を変更できる) かどうかを示します。
HTTPRequest ノードの「説明」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
ノード名 | いいえ | いいえ | ノード・タイプ、HTTPRequest | ノードの名前。 |
簡略説明 | いいえ | いいえ | ノードの簡単な説明 | |
詳細説明 | いいえ | いいえ | メッセージ・フロー内のノードの目的を説明するテキスト |
HTTPRequest ノードの「基本」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
Web サービス URL | はい | はい | Web サービスの URL。 次の形式で提供する必要があります。http://hostname[:port]/[path] ここでは、
|
URLSpecifier | |
要求タイムアウト (秒) | はい | はい | 120 | ノードが、Web サービスからの応答を待機する時間 (秒単位)。 有効な範囲は、1 から (231)-1 です。 無期限に待機することを示す値を入力することはできません。 タイムアウトになるまでに、指定値より 1 秒長い時間がかかる場合もあります。 | timeoutForServer |
HTTPRequest ノードの「HTTP 設定」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
HTTP(S) プロキシーの位置 | いいえ | はい | 要求の送信先のプロキシー・サーバーの位置。 この値は、hostname:port という形式でなければなりません。 | httpProxyLocation | |
HTTP(S) 転送を使用 | いいえ | いいえ | 選択されていない | チェック・ボックスを選択すると、転送に従います。 このチェック・ボックスのチェックを外すと、転送は行われません。 | |
HTTP バージョン | いいえ | はい | 1.0 | 要求に使用する HTTP バージョン。 有効な値は、1.0 および 1.1 です。 | httpVersion |
HTTP/1.1 キープアライブを使用可能にする | いいえ | はい | 選択済み (HTTP バージョン が 1.1 の場合) | HTTP/1.1 キープアライブを使用する | enableKeepAlive |
HTTP メソッド | いいえ | いいえ | POST | HTTP メソッド。 有効値は、POST、GET、PUT、DELETE、HEAD です。 デフォルトでは、HTTPRequest ノードはリモート Web サーバーへの接続時に HTTP POST メソッドを使用します。 HEAD はサービスが使用可能かどうかを判別するために使用されます。例えば、使用可能なサーバーを検出するためにネットワーク・ディスパッチャーが使用することがあります。そして、(content-length を含め) 正しいヘッダーを本体データなしで戻します。 | |
圧縮の使用 | いいえ | はい | なし | このプロパティーでは、HTTP 要求の内容を圧縮するかどうかを制御します。 選択可能な値は、none、gzip、zlib (deflate)、および deflate です。 要求を圧縮する場合は、Content-Encoding ヘッダーが内容の圧縮を示す値に設定されます。 zlib (deflate) は、RFC 1950 と RFC 1951 の組み合わせを表します。 deflate は RFC 1951 のみを表します。 |
requestCompressionType |
HTTPRequest ノードの「SSL」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
プロトコル | いいえ | はい | SSL | HTTPS 要求の作成時に使用する SSL プロトコル。 | protocol |
許可される SSL 暗号 | いいえ | はい | SSL 要求の作成時に使用する、コンマで区切られた暗号のリスト。 デフォルト値の空ストリングが設定されると、使用可能なすべての暗号が使用されます。 | allowedCiphers | |
SSL 証明書ホスト名検査を使用可能にする | いいえ | はい | いいえ | このプロパティーは、要求を受け取っているサーバーのホスト名が、SSL 証明書のホスト名と一致する必要があるかどうかを指定します。 | hostnameChecking |
SSL クライアント認証鍵別名 | いいえ | はい | "" (空ストリング) | このプロパティーでは、HTTP 接続のクライアント・サイドの SSL 認証別名を指定します。デフォルト値が設定されると、最初の適切な鍵が自動的に選択されます。 | keyAlias |
HTTPRequest ノードの「応答メッセージの構文解析」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
メッセージ・ドメイン | いいえ | いいえ | BLOB | メッセージの構文解析に使用されるドメイン。 フィールドがブランクの場合、デフォルトは BLOB になります。 |
メッセージ・モデル | いいえ | いいえ | 選択されていない | メッセージが定義されているメッセージ・モデル・スキーマ・ファイルの名前またはロケーション。 このリストには、選択したメッセージ・ドメインに使用可能なすべてのメッセージ・モデル・スキーマ・ファイルが取り込まれます。 |
メッセージ | いいえ | いいえ | 選択されていない | メッセージ・モデル・スキーマ・ファイル内のメッセージ・ルートの名前またはロケーション。 このリストには、選択したメッセージ・モデルで定義された、利用可能なすべてのメッセージが取り込まれます。 |
物理形式 | いいえ | いいえ | 選択されていない | メッセージの物理フォーマットの名前。 MRM または IDOC パーサーを使用する場合は、リストから着信メッセージの物理形式を選択します。 このリストには、選択されたメッセージ・モデル用に定義したすべての物理形式が含まれます。 「メッセージ・ドメイン」プロパティーを DataObject に設定した場合、このプロパティーを XML または SAP ALE IDoc に設定できます。 外部ソースからのビット・ストリームを構文解析してメッセージ・ツリーを生成する必要がある場合には、このプロパティーを SAP ALE IDoc に設定してください。 |
HTTPRequest ノードの「パーサー・オプション」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
構文解析のタイミング | いいえ | いいえ | 要求時 | このプロパティーは、いつ応答メッセージを解析するかを制御します。 有効な値は、「要求時」、「即時」、および「完全」です。 このプロパティーに関する詳しい説明については、要求時の構文解析を参照してください。 |
XML スキーマ・データ・タイプを使用してツリーを構築する | いいえ | いいえ | 選択されていない | このプロパティーは、XML スキーマから取得されたデータ・タイプを使って、XMLNSC パーサーがメッセージ・ツリー内に構文エレメントを作成するかどうかを制御します。 「妥当性検査」タブ上の「妥当性検査」プロパティーを「内容」 または 「内容と値」 に設定した場合にのみ、このプロパティーを選択できます。 |
XMLNSC コンパクト・パーサーを XMLNS ドメインに使用 | いいえ | いいえ | 選択されていない | このプロパティーは、XMLNS ドメイン内のメッセージに XMLNSC コンパクト・パーサーを使用するかどうかを制御します。 このプロパティーを設定すると、入力 MQRFH2 ヘッダーまたは「応答メッセージの構文解析」プロパティー・ドメインが XMLNS である場合に、出力ターミナルに接続されているノードの XMLNSC の下に応答メッセージ・データが表示されます。 |
混合内容の保存 | いいえ | いいえ | 選択されていない | このプロパティーは、XMLNSC パーサーが応答メッセージ内で混合テキストを検出したときに、メッセージ・ツリー内にエレメントを作成するかどうかを制御します。 チェック・ボックスを選択すると、混合テキスト用のエレメントが作成されます。 このチェック・ボックスのチェックを外した場合、混合テキストは無視されて、エレメントは作成されません。 |
コメントの保存 | いいえ | いいえ | 選択されていない | このプロパティーは、XMLNSC パーサーが応答メッセージ内でコメントを検出したときに、メッセージ・ツリー内にエレメントを作成するかどうかを制御します。 チェック・ボックスを選択すると、コメント用のエレメントが作成されます。 このチェック・ボックスのチェックを外した場合、コメントは無視されて、エレメントは作成されません。 |
処理命令の保存 | いいえ | いいえ | 選択されていない | このプロパティーは、XMLNSC パーサーが応答メッセージ内で処理命令を検出したときに、メッセージ・ツリー内にエレメントを作成するかどうかを制御します。 チェック・ボックスを選択すると、処理命令用のエレメントが作成されます。 このチェック・ボックスのチェックを外した場合、処理命令は無視されて、エレメントは作成されません。 |
不透明エレメント | いいえ | いいえ | ブランク | XMLNSC パーサーによって不透明解析される応答メッセージ内のエレメントのリストを指定するときに、このプロパティーを使用します。 不透明解析が実行されるのは、妥当性検査が使用不可に設定されている場合のみ (つまり、「妥当性検査」プロパティーが「なし」の場合) です。妥当性検査が使用可能な場合、「不透明エレメント」で指定される項目は無視されます。 |
HTTPRequest ノードの「エラー処理」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
入力をエラーで置換 | いいえ | いいえ | 選択されている | このチェック・ボックスを選択すると、入力メッセージの内容はエラー・メッセージの内容で置換されます。 このチェック・ボックスのチェックを外す場合は、「エラー・メッセージの位置」を指定する必要があります。 |
エラー・メッセージの位置 | はい | いいえ | OutputRoot | Web サービス・エラーのビット・ストリームから構文解析されたエレメントが保管される開始位置。 このプロパティーは ESQL フィールド・レファレンスの形式を取ります。 |
HTTPRequest ノードの「拡張」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
入力メッセージ全体を要求として使用 | いいえ | いいえ | 選択されている | このチェック・ボックスを選択すると、入力メッセージ本体全体が Web サービスに渡されます。 このチェック・ボックスのチェックを外す場合は、「ツリー内の要求メッセージ位置」を選択する必要があります。 | |
ツリー内の要求メッセージ位置 | はい | いいえ | InputRoot | Web サービスに送信するためにビット・ストリームが作成される開始位置。 このプロパティーは ESQL フィールド・レファレンスの形式を取ります。 | |
入力メッセージを Web サービス応答と置換 | いいえ | いいえ | 選択されている | このチェック・ボックスを選択すると、Web サービス応答メッセージが、作成される出力メッセージの内容として入力メッセージのコピーと置換されます。 このチェック・ボックスのチェックを外す場合は、「ツリー内の応答メッセージ位置」を選択する必要があります。 | |
ツリー内の応答メッセージ位置 | はい | いいえ | OutputRoot | Web サービス応答のビット・ストリームから構文解析されたエレメントが保管される開始位置。 このプロパティーは ESQL フィールド・レファレンスの形式を取ります。 | |
入力からデフォルト HTTP ヘッダーを生成 | いいえ | いいえ | 選択されている | このチェック・ボックスを選択すると、HTTPRequestHeader が生成されます。 このチェック・ボックスのチェックを外す場合には、有効な HTTPRequestHeader が入力メッセージ内に存在している必要があります。 | |
圧縮した応答をデフォルトで受け入れる | いいえ | はい | 選択されていない | このプロパティーは、要求ノードがデフォルトで圧縮した応答を処理するかどうかを示します。 要求ヘッダーに「Accept-Encoding」ヘッダーが含まれていない場合に、このオプションを選択すると、ノードによって「Accept-Encoding」ヘッダーが「gzip、deflate」に設定され、受信された圧縮した応答がノードによって圧縮解除されます。
Request ノードに伝搬されたメッセージに「Accept-Encoding」ヘッダーが含まれている場合、メッセージ・フローまたはクライアント・アプリケーションによって、圧縮された応答がすべて処理されます。 したがって、そのような場合にこのオプションを選択しても、効果はありません。 |
acceptCompressedResponses |
HTTPRequest ノードの「妥当性検査」プロパティーについては、次の表に説明されています。
これらのプロパティーの詳細については、妥当性検査プロパティーを参照してください。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
妥当性検査 | いいえ | はい | なし | このプロパティーは、妥当性検査を行うかどうかを制御します。 有効な値は、「なし」、「内容と値」、「内容」、および「継承」です。 | validateMaster |
失敗時の処置 | いいえ | いいえ | 例外 | このプロパティーは、妥当性検査が失敗した場合の動作を制御します。 「妥当性検査」を「内容」または「内容と値」に設定した場合にのみ、このプロパティーを設定できます。 有効な値は、「ユーザー・トレース」、「ローカル・エラー・ログ」、「例外」、および「例外リスト」です。 |
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
イベント | いいえ | いいえ | なし | ノードに対して定義したイベントが、このタブに表示されます。 デフォルトでは、メッセージ・フローのどのノードに対してもモニター・イベントは定義されません。 ノードのモニター・イベントを作成、変更、または削除するには、「追加」、「編集」、および「削除」を使用します。詳しくは、モニター・プロパティーを使用したモニター・イベント・ソースの構成を参照してください。 「使用可能」チェック・ボックスを選択またはクリアすることによって、ここに表示されているイベントを使用可能および使用不可に設定できます。 |
設定 | 説明 |
---|---|
RequestURL | ノードの「Web サービス URL」プロパティーを指定変更します。 以下に例を示します。
|
Timeout | ノードの「要求タイムアウト (秒)」プロパティーを指定変更します。 以下に例を示します。
|
TimeoutMillis | ノードの「要求タイムアウト (秒)」プロパティーを指定変更します。 以下に例を示します。
このプロパティーは、ミリ秒でタイムアウトを定義します。 TimeoutMillis と Timeout の値をどちらも設定すると、TimeoutMillis の値が優先されます。 |
ProxyURL | ノードの「HTTP(S) プロキシーの位置」プロパティーを指定変更します。 以下に例を示します。
|
RequestLine.RequestURI | URL とポートの後のパスである「RequestURI」を指定変更します。 以下に例を示します。
|
RequestLine.HTTPVersion | ノードの「HTTP バージョン」プロパティーを指定変更します。 以下に例を示します。
|
KeepAlive | ノードの「HTTP/1.1 キープアライブを使用可能に設定」プロパティーを指定変更します。 以下に例を示します。
|
RequestLine.Method | ノードの「HTTP メソッド」プロパティーを指定変更します。 以下に例を示します。
|
SSLProtocol | 「SSLProtocol」を指定変更します。
以下に例を示します。
有効値は、SSL、SSLv3、および TLS です。 |
SSLCiphers | ノードの「許可された SSL 暗号」プロパティーを指定変更します。 以下に例を示します。
|
ProxyConnectHeaders | アウトバウンド要求がプロキシーを介した SSL 接続である場合に使用される、追加のヘッダーを指定します。 これらの追加ヘッダーは、最初の CONNECT 要求と共にプロキシーに送信されます。 例えば、SSL を使用している場合、プロキシー・サーバーにプロキシー認証情報を送信できます。 複数のヘッダーを送信できますが、各ヘッダーは RFC2616 に基づいて復帰と改行 (ASCII 0x0D 0x0A) で区切る必要があります。
例えば、
この設定は、要求がプロキシー・サーバーを介した SSL 要求である場合にのみ使用されます。 非 SSL 要求に対するプロキシー認証情報を送信するには、以下の例に示されているように、HTTPRequestHeader フォルダー内の個々のヘッダーを指定します。
|
UseFolderMode | UseFolderMode を設定します。 ビット・ストリーム生成に使用します。特定のパーサーでは、これにより出力ビット・ストリームが変更されます。 以下に例を示します。
|
QueryString | アウトバウンド照会ストリング・パラメーターの設定を可能にします。 各パラメーターを個別に設定する必要があります。 以下に例を示します。
上記の ESQL は、(http://tools.ietf.org/html/rfc3986 に従って) エンコードされ、アウトバウンド要求と共に送信され、以下の照会ストリングとなります。
宛先 URL が 1 つ以上の照会パラメーターをすでに持っている場合、ここで指定された追加パラメーターは既存のリストに付加されます。 |
QueryStringCCSID | エンコードの前に照会ストリング・パラメーターをデフォルト (UTF-8) 以外の文字セットに変換する必要があることを指定します。 すべての照会ストリング・パラメーターは最初に、RFC3986 に従って、結果のストリングがエンコードされる前に、指定された CCSID に変換されます。
以下に例を示します。
上記の ESQL により、すべての QueryString パラメーターは、エンコードされる前に 943 コード・ページに変換されます。 注: すべての照会ストリング・パラメーターは、Unicode 形式のデータを含む必要があります。 |
圧縮 | ノードの「圧縮の使用」プロパティーを指定変更します。 以下に例を示します。
圧縮が適用される最小サイズ (バイト数) を設定するには、次のオーバーライドを使用します。
|
WrittenDestination = (
HTTP = (
RequestURL = 'http://127.0.0.1:7800/HTTPFLOW' (CHARACTER)
Compression = (
OriginalSize = 53 (INTEGER)
CompressedSize = 71 (INTEGER)
)
)
)