0

GET を使用してリソースへのアクセスを提供する REST API があります。

このメソッドを使用すると、特定のインスタンスまたはすべてのインスタンスを取得できます。

この場合、1 つのインスタンスでは十分ではなく、すべてが多すぎます。

私が行ったことは、 /api/filteredresource のようなパターンで新しいコントローラーを作成し、返されるアイテムのリストを制限するために使用されるフィルターの表現を含む本文で POST 要求を作成することです。

私は「どうすれば…」という答えを探しているのではなく、「このようにすべきか…」という答えを求めています。

ここでのベストプラクティスは何ですか?

この StackOverflow の記事では、データをキャッシュできない (またはすべきではない) ため、この方法で行うべきではないことを示唆しているようですが、この場合、このフィルター処理されたデータのキャッシュは意味がありません。技術的に正しい答えではなく、実用的な答えを探していると思います。

** 編集 ** 最初の要件は、特定のステータスに一致するリソースのインスタンスを検索することだけでしたが、これは「最初のステップ」であったようです。彼らは、多くの場合、リソース自体の要素に一致するあらゆる種類のプロパティを含む、使用したい「検索キー」を持っており、この「検索キー」(またはその表現) を次のように使用できるようにしたいと考えています。フィルター。**編集終了**

4

2 に答える 2

1

クエリ パラメータを使用して次のようにフィルタリングします。

GET /rest/things/1

で物を取得しid=1ます。

GET /rest/things

すべてのものを取得します。

GET /rest/things?color=yellow

黄色のものだけを取得します。

于 2013-11-05T09:23:13.703 に答える