1

我正在创建一些生成和使用 XML 的 Web 服务。计划是在带有 JAXB 的 Tomcat 6.x 上使用 Jersey 1.x。

我需要找出的是;创建这些服务时有什么经验法则可以遵循吗?执行 PUT 或 GET 时的常见做法是什么?消费者是否期望返回响应、状态或对象?

我一直在阅读和查看所有这些场景的示例,但每个作者/博主以及如何似乎以不同的方式处理这些相同的场景。

那些已经这样做了一段时间的人有什么建议吗?

谢谢

4

1 回答 1

1

每个人似乎都同意或不同意的一些事情:

  1. 无效请求返回 HTTP 400 代码。500 只应用于“意外异常”。
  2. 虽然没有明确的规范,但请尝试使用Clean URLs。除了提到的好处之外,如果您需要,它还可以更轻松地设置反向代理。
  3. 在 HTTP 方法上,虽然似乎对 GET 和 DELETE 达成了一致,但关于 PUT 或 POST 中的哪个创建或更新存在争议。请参阅此讨论。最后,一些代理或 Web 服务器(IIS 任何人)并不总是容易处理除 GET 和 POST 之外的任何事情,因此您必须求助于额外的X-HTTP-Method-Override标头来指定您的实际方法。
  4. 您应该尊重 Accept 标头并返回所请求类型的内容。文本类型(XML、JSON、纯文本和 HTML)是最常见的,但您可能不想支持所有这些。

REST 的吸引力在于它的简单性。确保你保持这种方式。很简单,记录服务很容易,这是真正的关键,而不是您使用的是 POST 或 PUT。

于 2012-04-27T05:09:37.933 回答