0

我正在设计一个 REST api,遵循最佳实践,包括一种超媒体/仇恨形式。我正在使用jsonapi作为设计指南,这似乎很完整。

目前,我需要:

  1. 在响应中组合 2 个资源(一个资源 A 和一个相关的资源 B)。我使用jsonapi 中指定的复合文档结构来执行此操作。或者也俗称资源扩张
  2. 以专门的方式格式化 1. 的结果,以便期望所述格式化的专门客户可以轻松地使用它。

我的问题是2。我如何以 REST 方式正确表示这一点?看来我可能需要一个单独的端点,但这不是“RESTy”,因为这意味着一个单独的资源,而它只是同一资源输出的转换。

有关如何执行此操作的任何参考?

4

1 回答 1

1

您可以使用标头或查询参数来处理此问题。

当客户端需要特定格式时,他们可以在请求中添加额外的标头,Format:Indented例如http:\\myapp.com\resouces\myresource?format=indented

或者,如果服务器正在格式化并希望客户端知道响应已预先格式化,则服务器可以添加Format响应标头以通知客户端响应已格式化。

于 2014-09-17T11:18:27.443 回答