私のAPIにとっては安らかなデザインが混乱しています。デザインに関する助言が必要ですユーザーロールで安心して
私は2つの役割がエンドユーザーとバックエンド(管理者)です。バックエンドの役割で、私はユーザーの任意のリソースにアクセスできます
ユーザーは多くの注文を持つことができます。
は、だから私は、ユーザーリソース
GET /users/{userID} -- get User Information
GET /users/{userID}/orders -- list user order list
POST /users/{userID}/orders -- user make an order
にベースを定義した。しかしオム..後にいくつかのオンラインドキュメントを読んで、ユーザーIDが認証フェーズの後に識別されますので、ので、ここで順を使用して、さまざまなデザインをしていますリソース:
GET /orders/ --list user order list by user account(backend can get all)
GET /orders/{orderID} --get orderID by userID
POST /orders/ -- user make an order.
この定義では、バックエンドユーザーがユーザーによる注文をリストする場合。どちらの方法を使うべきですか?
GET /orders?user={userID} (user as query parameter) -- List order with userID
それとも
GET /users/{userID}/orders
PLSのは、1(ユーザーまたは注文リソース)私に助言デザインが優れている、となぜですか? Tks、
for 2 2. Aliceにバックエンドの役割があり、すべての注文を表示する権限を持っていればOKですが、Aliceが通常のユーザーであれば、サービスから403が得られます。私は、あなたの3番目の注釈がURIパターンを選択する正当な理由だと思います。 Tks – ducanhng