1

私はURIを持つ残りのリソースを持っています:

/invoices/1/invoiceitems/34

次に、invoiceitempieces という請求書アイテムの子を追加する必要があります。

これは次のように行う必要があります。

/invoices/1/invoiceitems/34/invoiceitempieces/7

これらのオプションよりも整理されているようです

/invoiceitems/34/invoiceitempieces/7
/invoiceitempieces/7

私は 3 つの ID をすべて使用した例を好みますが、それはベスト/許容できるプラクティスですか?

4

3 に答える 3

1

これが最も適切に思えますが、概念的には...

/invoices/1/invoiceitems/34/invoiceitempieces/7

... (私自身の経験に基づいて) 実装するのはかなり難しいと思います。あなたはこれが...

/invoices
/invoices/1
/invoices/1/invoiceitems
/invoiceitems/34
/invoiceitems/34/invoiceitempieces
/invoiceitempieces/7

...少しエレガントではないかもしれませんが、同様に便利で実装がはるかに簡単です。

于 2013-04-29T19:40:00.650 に答える
1

請求書アイテムと請求書アイテムIDのIDと注文が一意であり、「order + invoice_id」の組み合わせが一意であるため、2つの方法でinvoiceitempiecesスローにアクセスできる必要があると思います

/invoices/{invoice_id}/invoiceitems/{invoiceitems_order}/invoiceitempieces/{invoiceitempieces_order}
/invoiceitems/{invoiceitems_id}/invoiceitempieces/{invoiceitempieces_order}
/invoiceitempieces/{invoiceitempieces_id}

そのため、柔軟性があり、クライアントが必要とする場合は、「注文」という URI でより多くの情報を提供することもできます。

于 2013-04-30T05:50:37.230 に答える