【问题标题】:Standard REST API Design Convention标准 REST API 设计约定
【发布时间】:2016-11-06 15:50:53
【问题描述】:

说到严格的 REST API 设计约定,单个资源是否可以对应多个路由。

例如,我有路线:

http://www.example.com/registrations
http://www.example.com/confirmations
http://www.example.com/unlocks

所有这些端点都使用用户资源来注册新用户,使用确认令牌确认用户,并使用解锁令牌解锁用户。

这是正确的 REST 设计吗?

【问题讨论】:

  • 您对该资源发出什么样的 HTTP 请求,例如注册一个新用户?你使用什么 HTTP 动词,请求正文是什么,服务器如何响应?

标签: rest routes restful-architecture restful-url convention


【解决方案1】:

这并没有错,但除此之外,您还可能会有一个 /user 端点,因此可能有更好的方法来扩展它。

例如,解锁可能只是对上述/user 的 PUT,带有一个

{
    "state": "unlocked" //active, whatever
}

我不知道您的 API 的全部范围,但您可以像我上面那样使用 http 动词,或者将不同的有效负载发布到同一个端点(例如,在主体中具有一个确认令牌作为注册的属性,并重用该端点)。

【讨论】:

    猜你喜欢
    • 2011-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多