REST:相同数据的不同表示

时间:2011-05-20 19:13:22

标签: json rest

如何以RESTful格式构建相同数据可能以不同格式请求的API。例如。

GET /person/<id>  //get the details of resource <id>

现在,根据客户端(浏览器)的要求,数据可能会以html(比如正常呈现)或Json(比如ajax调用)发送。所以我怀疑是

  1. 我可以为这两个请求保留相同的网址,还是应该将它们分开?
  2. 如何检测请求是否是服务器上的html / Json。请求类型相同(GET)。那么我应该考虑哪个参数。
  3. 如何检测客户端(html / Json)\
  4. 的数据类型差异

    感谢,

    BSR。

2 个答案:

答案 0 :(得分:6)

类似的问题:REST Content-Type: Should it be based on extension or Accept header?

接受的答案有很多好处。

  

我可以为这两个请求保留相同的网址,还是应该将它们分开?

是的,保持不变。它是相同的资源,你只是要求它的不同表示。

  

如何检测请求是否适用于服务器上的html / Json。请求类型相同(GET)。那么我应该考虑哪个参数。

您可以使用Accept标头指定返回内容类型。

  

如何检测客户端(html / Json)\

的数据类型差异

你会看到“Content-Type”标题。

答案 1 :(得分:0)

为输出类型添加变量怎么样?