以前在上学的时候留下个场馆预订的坑项目,毕业后师弟接手,老师让给加上手机APP。然后就想给改成RestfulAPI的, 顺便把页面也重构了。 奆奆们指导。
在设计API的时候有这个情况,当时这么设计一个订单Order
class Order {
private String orderID;
private String usreID;
private String fieldsID;
...
private OrderState orderState;
...
...
}
其中 orderState代表订单状态,姑且有(为确认,已确认,已消费,过期)等
对于用户而言是无法修改订单状态的,可以修改预订内容,例如这么设计用户可用的,
新建订单 POST /api/orders/{userID}
修改 PUT/PATCH /api/orders/{userID}/{orderID}
获取 GET /api/orders/{userID}/{orderID}
删除 DELETE /api/orders/{userID}/{orderID}
对于场馆方面,前台需要在用户来消费时改变订单状态,即只能更改客户的一个字段。那这个API怎么设计? 是说同样使用
修改 PUT/PATCH /api/orders/{userID}/{orderID}
然后在代码里用逻辑进行判断。 还是说,增加新的API
PATCH /api/orders/state/{orderID}
大家一般是怎么做这种权限控制的呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.