WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

JSONP サービス応答のコンシューム

メッセージ・フローが JSON ドメインを使用するように構成されている場合、 JSON パーサーは JSONP メッセージを自動的に検出します。 JSON パーサーは JSON の付加情報を最上位の Padding エレメントに入れて、 JSON データを Data エレメントの下に入れます。

始める前に:

このタスクを完了する前に、JSON に関する以下の概要のトピックをお読みください。
パーサーは JSON データをメッセージ・ツリーの data エレメントの下に入れるため、JSON メッセージと JSONP メッセージは両方とも 1 つのメッセージ・フローで処理できます。 JSONP の付加情報が検出されると、クライアント側のスクリプトの名前が最上位の Padding エレメントに入れられます。

以下のステップに従って、付加情報が存在するかテストします。

  1. HTTPInput ノード、HTTPReply ノード、および任意の ComputePHPCompute、または JavaCompute ノードを使用してメッセージ・フローを作成します。
  2. HTTPInput ノードの「入力メッセージの構文解析」タブで、「Message domain」 プロパティーを 「JSON : JavaScript Object Notation メッセージの場合」に設定します。

  3. 以下のようにして、適切なコードを挿入します。
    • メッセージ・フローで Compute ノードを使用している場合:
      DECLARE PaddingRef REFERENCE TO InputRoot.JSON.Padding
      IF LASTMOVE(PaddingRef) THEN
         -- JSON Padding is present
      ELSE
          -- No JSON Padding present
      END IF;
    • メッセージ・フローで PHPCompute ノードを使用している場合:
      if ($input_assembly->JSON->Padding != null)
         // JSON Padding is present
      else
          // No JSON Padding
    • メッセージ・フローで JavaCompute ノードを使用している場合:
      if (message.getRootElement().getFirstElementByPath("JSON/Padding") != null){
          //JSON Padding is present
      }
      else{
          //No JSON Padding
      }
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:48:50


タスク・トピックタスク・トピック | バージョン 8.0.0.5 | bc40110_