POST到API /令牌的POST会处理新的令牌,如何将数据返回给调用者?

时间:2014-01-15 16:44:04

标签: rest api-design

我一直在研究REST API设计最佳实践。我来自RPC客户端/服务器背景。 我有以下问题:

我的服务围绕一个对象 - 令牌。

在创建新令牌时,会自动为该令牌生成唯一的令牌ID,只需将其发送回客户端即可。

构成令牌的其他字段是其值,ownerId和status。在创建时,令牌状态为“新”。

我理解对/ API /令牌的POST应该注意创建一个新令牌,但是我会将哪些数据返回给调用者?

  1. 201创建标题
  2. 表示带有所有字段的令牌的json对象
  3. 一个json对象,只有新的tokenID和status(这是调用者真正需要的全部)
  4. 指向新“令牌资源”的链接 - 这看起来很愚蠢,因为需要进一步的GET才能返回实际令牌
  5. 此时我正在考虑1)和3)

1 个答案:

答案 0 :(得分:3)

POST的w3c规范包含:

  

如果已在源服务器上创建资源,则为响应   应该是201(创建)并包含一个描述该实体的实体   请求的状态,并引用新资源和位置   头

所以我也会去a)和c)...