REST返回正确的响应

时间:2013-01-28 19:43:21

标签: rest

我有一个API,允许客户通过uri发布请求消息:[url] / Request

The Request message is xml:
<Request>
    <Source>1234</Source>
    <Destination>5551111</Destination>
    <Message>Hello</Message>
</Request>

The response message is
<Response>
    <Id>2589</Id>
    <Status>Stored</Status>
</Response>

是否正确,在REST意义上,位于/ Request的服务返回HTTP响应消息? 或者,/ Request帖子是否应该返回类似

的网址
/Response?MessageId=2589 

返回Response messsage?

1 个答案:

答案 0 :(得分:1)

HTTP规范说明了POST请求:

  

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

因此,从技术上讲,如果一个实体包含在POST响应中,它应该描述请求的状态。但status of the request的构成完全取决于实施者。大多数大型实现将返回新创建的资源的表示以指示“成功”,并返回指示“失败”的错误消息。在任何情况下,您都希望将响应的Location标头设置为新创建的资源的URI。