一部のRESTfulサービスでは、更新/取得/削除と作成に異なるリソースURIを使用します。例えば、
- 作成 - POST メソッド (複数形) で/resourcesを使用する (一部の場所では/resource (単数形) を使用する)
- 更新 - PUT メソッドで/resource/123を使用する
- Get - GET メソッドで/resource/123を使用する
この URI 命名規則について少し混乱しています。リソースの作成には複数形と単数形のどちらを使用すればよいでしょうか。それを決定する際の基準は何でしょうか。
ベストアンサー1
私にとっては、コードに直接マップできる(自動化しやすい)スキーマの方が優れています。主な理由は、両端にコードが存在するためです。
GET /orders <---> orders
POST /orders <---> orders.push(data)
GET /orders/1 <---> orders[1]
PUT /orders/1 <---> orders[1] = data
GET /orders/1/lines <---> orders[1].lines
POST /orders/1/lines <---> orders[1].lines.push(data)