0

商品と商品のレビューがあります。だから、私はこのような製品リストを得ることができます...

GET /products

また、1 つの製品、レビュー、またはこのような製品を取得することもできます...

GET /products/{productID}
GET /products/{productID}/reviews

それらは明らかです。しかし、私が書いたすべてのレビューを取得したいときに問題が発生します。このような uri を作成できます。

1. GET /products/reviews?author=myId

また

2. GET /reviews?author=myID

ただし、最初の問題は、{productID}と レビューの間の競合から生じます。次の問題は、関連する製品とレビューから発生します。これは、レビューが階層に従って製品の下にある必要があるためです。

RESTfulAPIで書いたすべてのレビューを取得するにはどうすればよいですか?

4

3 に答える 3

0

すべての製品について特定の作成者によって書かれたすべてのレビューを取得するには、これを行う RESTful な方法は次のようになります。

GET /authors/{authorId}/reviews

特定の作成者が 1つの製品について書いたすべてのレビューを取得する場合は、次のように使用できます。

(a) GET /authors/{authorId}/products/{productId}/reviews

クエリ文字列で productId または authorId を指定するよりも、このアプローチが気に入っています。著者には製品が含まれ、製品にはレビューが含まれるため、これは優れた RESTful URL です。ただし、クエリ文字列を使用する場合は、次のいずれかを使用できます。

(b) GET /products/{productId}/reviews?authorId={authorId}

(c) GET /authors/{authorId}/reviews?productId={productId}

しかし、個人的には、オプション (b) または (c) よりもオプション (a) を好みます。オブジェクト階層をより明確に説明していると思います。

于 2012-06-26T02:16:15.283 に答える
0

ルートはだいたいこんな感じ

GET /products/:product_id/reviews?author=myID

パラメータは - product_id - author

これにより、特定の製品と著者のすべてのレビューを取得できます。

ただし、すべてのレビューが必要な場合は、これが正しいです。

GET /reviews?author=myID

于 2012-06-22T08:45:57.150 に答える