0

いくつかのクエリ パラメータを含む HTTP/SOAP リクエストを受信して​​います。これらのクエリ パラメータは、key=value as /q=key1=value1&key2=value2 などの繰り返し形式になっています。上記の URL からすべてのキーを取得し、それらが有効かどうかを確認したいと思います。1. これらのキーを保持できるグローバル配列を定義する方法はありますか 2. キーが存在するかどうかを検証する方法。ESB は Java "contains" API をサポートしていますか?

4

2 に答える 2

1

xpath 式 get-property{'uri.var.xxx'} でクエリ パラメータを取得できます。xxx は、取得する必要があるクエリ パラメータの名前です。

リソースが URL マッピングで定義されている場合、指定された URL マッピングに一致する要求のみがリソースによって処理されます。別の方法として、URI テンプレートを使用してリソースを構成することもできます。URI テンプレートは、パターンと変数を使用して URI のクラスを表します。有効な URI テンプレートの例を以下に示します。

/order/{orderId} /dictionary/{char}/{word} 中括弧内のすべての識別子は変数と見なされます。テンプレート「/order/{orderId}」に一致する URL を以下に示します。

/order/A0001 上記の URL インスタンスでは、変数 orderId に値「A0001」が割り当てられています。同様に、次の URL はテンプレート「/dictionary/{char}/{word}」に従います。

/dictionary/c/cat この場合、変数「char」には値「c」があり、変数「word」には値「cat」が与えられます。リソースが URI テンプレートに関連付けられている場合、テンプレートに一致するすべての要求がリソースによって処理されます。同時に、ESB はメッセージ コンテキスト プロパティを通じてテンプレート変数の正確な値へのアクセスを提供します。例として、URI テンプレート「/dictionary/{char}/{word}」で構成されたリソースを想定します。リクエスト「/dictionary/c/cat」が ESB に送信されると、上記のリソースにディスパッチされ、WSO2 ESB の get-property XPath 拡張機能を使用して 2 つの変数の正確な値を取得できます。

于 2013-09-06T01:27:22.367 に答える