考虑到取消订单作为要求,以 RESTful 方式表示此操作的最佳设计选项是什么?为什么?
我至少可以想到以下几点
/orders/{id}/cancelled
(主体为空)/orders/{id}
(带有更改属性的整个订单 JSON/XML/等cancelled
)请记住,您的资源应该是名词,而不是动词或形容词。您http
负责告知您正在使用该资源做什么
/orders/{id}/cancelation
PUT
- 取消订单
DELETE
- 回滚取消(也可能是一种情况)
GET
- 返回取消详细信息(例如,您可能希望使用和字段扩展cancelation
资源)timestamp
username
/orders/{id}
PUT (PATCH) - 可以通过传递类似以下内容来取消:
{
...
"order_status": "CANCELLED"
...
}
Run Code Online (Sandbox Code Playgroud)
这确实取决于您的业务领域,但第一个听起来对我来说更可取,因为它增加了一些灵活性,例如扩展模型和timestamp
取消取消。
归档时间: |
|
查看次数: |
3974 次 |
最近记录: |