「ショッピング カート」機能を備えたオンライン ストアがあり、RESTful な方法で「空のカート」リンクを実装したいとします。
簡単にするために、私のリソースは CartItems を含む Cart であり、それぞれに Product があるとします。私のURIは次のようになります:
# 現在のユーザーのカートに商品を追加 POST /products/product_id/cart_items/ # 現在のユーザーのカートから商品を削除 削除 /cart_items/cart_item_id/
もしそうなら、「空のカート」リンクの RESTful URI はどのようになりますか?
代わりに、カートをアクションの汎用ホルダーと考えることができます (ここで説明されているように)。
# 商品を追加 # フォームデータの内容例 product_id=123&action=add POST /carts/cart_id/actions/ # 商品を削除 # action_id は、製品を追加するアクションの ID です 123 DELETE アクション/action_id # 空のカート # フォーム データには action=clear が含まれます POST /carts/cart_id/actions/
このアプローチは、必要以上に複雑に思えます。より良い方法は何でしょうか?