【发布时间】:2018-08-06 07:07:14
【问题描述】:
我有一个登录名,我需要做这样的事情:
1. POST .../authentication/login
2. POST .../authentication/verifyToken
3. POST .../authentication/forgotPassword
- 会要求提供电话和密码。
- 将要求提供身份验证令牌。
- 会要求提供电话和密码。
但正如我所读,这种结构并不好,因为它包含动词而不是名词。
我尝试过做这样的事情:
1. POST .../sessions/new
2. GET .../sessions/:token
3. GET .../sessions/forgot
1. Will create a new token, based on phone and password correct credentials.
2. Will verify the token validation or expiration.
3. Will send a SMS within a new password or a new temporary password reset code.
第一种方法不是 REST。但它完全清楚。 您可以阅读 URL 并准确了解它要做什么。你不需要任何解释。
然而,越来越多的文章说 REST 中的动词不是 RESTFUL,因此不是一个好的实践。
处理这个问题的正确方法是什么?
【问题讨论】:
-
为什么你认为 REST POST 不应该在 URL 中使用动词?我想知道你是从哪里得到这个概念的?
-
@jfriend00 REST API 不应该在端点名称中使用动词。参见例如this stackoverflow post 或this stackoverflow post。