在REST中发帖

时间:2012-07-25 11:51:09

标签: rest

我指的是有关REST api设计的O'Reilly书籍,它明确规定了消息格式,特别是关于如何使用链接来表示相互关联的资源和内容的方面。但所有示例都是用于读取资源(GET)以及服务器如何构造消息。但是创建(POST)怎么样?用于创建类似相互连接的对象的消息结构是否应该是相似的,即通过链接?
 举个例子,让我们考虑一下我们想用Parent字段创建一个Person对象。 json消息格式是否应通过POST(Post msg正文)发送到服务器,如: -

{
  name:'test',
  age:12,
  links:[
   {
      rel:'parent',
      href:'/people/john'
    }     
]
}

2 个答案:

答案 0 :(得分:3)

以下是您可以查看的媒体类型

http://stateless.co/hal_specification.html

答案 1 :(得分:1)

是的,这是一种做法。 GET信息可能非常有用,但POST / PUT信息以机器为目标。

添加信息以减少服务器处理信息的需要(例如,通过将自身限制为验证信息是有意义的而不是从头开始全部恢复)在性能方面也很有意义。只要您验证:请记住,用户数据必须在一般原则上被视为可疑。你不希望第一个精通ExtJS的人能够伪造你的服务请求。

您也可以使用XML或CSV格式化数据,具体取决于特定应用程序的最佳状态。并且请记住,您可能希望重构或重用代码,因此遵循单一标准也是有意义的。考虑到所有事情,JSON可能是最好的选择。