设计 RESTful 风格的 api, 获取短信验证码的接口应该放在哪个资源下比较好


rt, 除了获取短信验证码的接口, 还会有一些操作, 比如搜索接口, 都只是一个动作, 这些大家在设计 RESTful 风格的 api 时, 是如何设计的呢?

为了更详细的描述这个问题, 我举几个例子, 我指的是放在哪个资源下, 而不是动作
例如
post /users 代表注册
get /users 代表获取用户信息
post /sessions 代表登录
delete /sessions 代表退出
这里 sessions , users 就是资源

restful api设计

帅气福小猫 9 years, 12 months ago

这里可以追加问题么?
如果楼主知道麻烦回答下。。
比如说get users,这个借口,如果我想根据用户的状态加其他查询比如用where这跟get users算一个接口,还是两个?

从来不起名 answered 9 years, 12 months ago

这,楼主提问太抽象啦

走边路诺八嘎 answered 9 years, 12 months ago

我司这么理解的,如果执行资源操作的人是请求者,那就用名词做uri,如果执行资源操作的是服务器或者其他就创建一个服务请求,我记得有一个比较好的例子是转账业务,用transaction做uri。所以短信验证码我觉得用一个创建一个短信通知比较合理。比如sms-notify

坂町近次郎 answered 9 years, 12 months ago

哈。我们项目是直接用/api/sms的。当时也没注意这么多,用得是POST,主要是考虑到每次POST 会增加服务器上的某些资源

小小小小小纸团 answered 9 years, 12 months ago

用messageCode来定义资源,然后资源表述定义为get||search,按照你的提问我是这么理解的.

沙包二等兵 answered 9 years, 12 months ago

按照 restful 的规范(名字只能是一个名词/资源,不能出现动词),可以如下:


 GET /messageCode 获取验证码
POST /messageCode 刷新验证码
DELETE /messageCode 让那个验证码过期
PUT /messageCode 这个好像用不上...因为直接get那步就搞定了

傲娇D小曼 answered 9 years, 12 months ago

Your Answer