出力フィルター処理

JSON (RESTful) Web サービスからの応答をフィルター処理するための [Path] および [ Query] インターフェイス フィールドの使用について説明します。

[Path] および [Query] インターフェイス フィールドについては、実行時、出力応答の本文は、URI で受信したパス パラメーターまたはクエリ パラメーターの名前と、応答本文の出力フィールドの名前が一致すると、そのパラメーター値でフィルター処理されます。たとえば、次のように定義されたオペレーションの場合について説明します。

[Path] /cars/{make}

car 内で定義されたフィールドの名前が make です。

出力応答配列 car 項目
ランタイム要求 URI .../cars/ford?color=red&doors=4

car 内で定義されたフィールドの名前が color および doors です。

応答本文配列は、URI で指定された値と一致しない makecolor および doors 値を持つ car のインスタンスを除外し、URI で指定された値に一致するインスタンスを含みます。この例では、応答本文には赤い 4 ドアのフォードのみが含まれます。

[Path] インターフェイス フィールドまたは [Query] インターフェイス フィールドを出力メッセージのフィルターとして機能させたくない場合は、その名前が出力の [Body] インターフェイス フィールドの名前と一致しないようにしてください。

さらに、指定されたフィールドとその親フィールドおよび子フィールドのみを含み、他のすべての定義済みフィールドを応答から除外する応答本文を生成するには、特別な $fields 組み込みクエリ パラメーターを次の構文で使用できます。

$fields=commaSeparatedListOfOutputFieldNames

ここで、commaSeparatedListOfOutputFieldNames は、応答本文に表示するフィールドのカンマ区切りリストです。次に例を示します。

http://localhost:9003/temppath/CarTracker/1.0/cars?doors=2&fuelType=gasoline&$fields=make,model,price,fuelType

makemodelprice、および fuelType フィールドの値のみを含む応答本文が生成されます。

詳細については、「[Body]、[Path]、および [Query] のフィールド」および「HTTP メソッド/パス」を参照してください。