对一个 Boolean 类型的属性进行 update 操作,怎样设计接口比较合适?
以下是我想到的两种方式:
POST /site/:siteID/published
{ published: true}
POST /site/:siteID/published/active
大家都是怎么做的?
![]() | 1 hahasong 2015-04-29 17:59:21 +08:00 ![]() POST /site/:siteID/set_published {status : true/false} |
![]() | 2 Cee 2015-04-29 18:03:37 +08:00 ![]() published unpublished |
3 Charles0429 2015-04-29 18:46:27 +08:00 ![]() https://developer.github.com/v3/users/followers/#follow-a-user 贴一个github的例子,用POST和DELETE分别实现关注和取消关注。 |
![]() | 4 khowarizmi OP |
5 raincious 2015-04-29 18:59:58 +08:00 ![]() @khowarizmi 他的意思应该是: POST /site/:siteID/published // Set published => true DELETE /site/:siteID/published // Set published => false 我倒是觉得 POST /site/:siteID/published { published: true} 这个方法挺好。那么纠结程序都写出来了。 |
![]() | 6 khowarizmi OP @raincious 那就先采用了传一个对象去更新属性吧,THX。 |
![]() | 7 iyangyuan 2015-04-29 22:19:30 +08:00 via iPhone ![]() 首先,restful设计中,uri中不能出现动词,修改一般用put请求,至于如何传值,既然这个值是实体的一个属性,难么直接用实体去接收就好了,直接传对象的一个属性即可。 个人见解,仅供参考。 |
![]() | 8 khowarizmi OP @iyangyuan right,确实应该用 PUT |
![]() | 9 vampirekiss 2015-04-30 13:24:22 +08:00 PATCH /site/:siteID |