好的,我有一个支付系统。让我们忽略它周围的一切,并专注于支付本身。
通过一堆巫师,我建立了特定的付款。
首先,我做了一个
POST /付款
服务器返回
LOCATION / payment / {id}
第一个向导页面:
PUT / payment / {id}
服务器返回
201(已创建)
后续向导页面:
PUT / payment / {id}和 POST / payment / {id} / {subresource}
服务器返回
202(接受)PUT和 201(创建)子资源
最后一页(只有摘要和“你确定”)
这是我的问题,我应该将什么用作REST端点?
PUT / payment / {id} / process
显然是错误的,因为进程是动词,而不是资源。
PUT / payment / {id}
暗示客户端将进行处理,这是服务器不信任的。
PUT / payment / {id}
状态已更改(类似于“处理”)并且截获状态更改似乎非常hacky并且根本不是好设计。
任何人都有其他想法吗?
答案 0 :(得分:2)
首先付款的GET:
GET /payment/{id}
获取该表示并将其POST到处理资源
POST /payment/processqueue
Location标头可以包含指向某个资源的链接,该资源显示处理的状态。