Jersey RESTful Web服务拇指规则

Jersey RESTful Web服务拇指规则,jersey,jax-rs,restful-architecture,Jersey,Jax Rs,Restful Architecture,我正在创建一些生成和使用XML的web服务。计划是在带有JAXB的Tomcat6.x上使用Jersey 1.x 我需要知道的是;在创建这些服务时,有什么经验法则可以遵循吗?在执行PUT或GET时,有哪些常见做法?消费者是否期望返回响应、状态或对象 我一直在阅读和查看所有这些场景的示例,但每个作者/博客作者都不知道如何以不同的方式处理这些场景 那些已经做了一段时间的人有什么建议吗 谢谢有些事情大家似乎都同意或不同意: 无效请求返回HTTP 400代码。500只能用于“意外异常” 虽然没有明确的规范

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

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

我一直在阅读和查看所有这些场景的示例,但每个作者/博客作者都不知道如何以不同的方式处理这些场景

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


谢谢

有些事情大家似乎都同意或不同意:

  • 无效请求返回HTTP 400代码。500只能用于“意外异常”
  • 虽然没有明确的规范,但请尝试使用。除了上述优点之外,如果需要,还可以更轻松地设置反向代理
  • 在HTTP方法上,虽然在GET和DELETE上似乎存在一致意见,但在创建或更新PUT或POST的问题上存在争议。看见最后,某些代理或web服务器(IIS Anywhere)不总是轻松地处理GET和POST之外的任何事情,因此您必须求助于附加的
    X-HTTP-Method-Override
    头来指定实际的方法
  • 您应该尊重Accept标头并返回请求类型的内容。文本类型(XML、JSON、纯文本和HTML)是最常见的,但您可能不想支持所有这些类型

  • 休息的吸引力在于它的简单;一定要保持这样。简单地说,记录服务很容易,这才是真正的关键,而不是你在使用POST或PUT。

    有些事情大家似乎都同意或不同意:

  • 无效请求返回HTTP 400代码。500只能用于“意外异常”
  • 虽然没有明确的规范,但请尝试使用。除了上述优点之外,如果需要,还可以更轻松地设置反向代理
  • 在HTTP方法上,虽然在GET和DELETE上似乎存在一致意见,但在创建或更新PUT或POST的问题上存在争议。看见最后,某些代理或web服务器(IIS Anywhere)不总是轻松地处理GET和POST之外的任何事情,因此您必须求助于附加的
    X-HTTP-Method-Override
    头来指定实际的方法
  • 您应该尊重Accept标头并返回请求类型的内容。文本类型(XML、JSON、纯文本和HTML)是最常见的,但您可能不想支持所有这些类型
  • 休息的吸引力在于它的简单;一定要保持这样。简单来说,记录服务很容易,这才是真正的关键,而不是你在使用POST或PUT