【问题标题】:REST representation for xmlxml 的 REST 表示
【发布时间】:2010-12-03 14:33:51
【问题描述】:

我正在构建一个 REST api 并讨论我应该为 xml 表示使用什么格式。 我知道它可以在内部定义,但格式也有很多。 wadl 看起来很有趣,但似乎有关于它的争论,而且它也是新的。

有哪些建议(最佳实践)?

【问题讨论】:

    标签: xml json api rest wadl


    【解决方案1】:

    只要是有效的 XML 就可以了。我对简单 REST/XML 服务的一般策略如下:

    对于解析,您几乎肯定需要一个始终存在的单个根节点,例如“response”,可以包含结果元素或错误元素。 例如:

    <response>
      <result>
        <answer>5</answer>
      </result>
    </response>
    

    构建结果的方式取决于您。您可以决定是否将元素中的数据保存为 CDATA(文本注释,如上所示)或作为必需的属性,例如

    <answer value="5"/>
    

    有时有用的另一件事是在响应中包含您的原始查询,例如:

    <response query="operation=add&a=2&b=3"> .. </response>
    

    这样,如果您有多个未完成的查询,您可以将它们匹配回原始请求。

    【讨论】:

    • 我的问题更相关 - 我是否应该按照您的描述发明自己的方式来进行表示,可能会冒着省略一些 REST 好处或只使用众所周知的表示的风险。
    • 好吧,WADL 描述是一种正式描述您的 REST 服务的方式 - 但 XML 响应格式仍然是您定义的,然后在 WADL 响应表示中描述。除非您的服务是微不足道的,例如从字面上发布文本到名称资源或从名称资源中读取文本,您通常需要为数据创建格式。
    • 好的 - 所以基本上我对资源等进行了计划,以及如何将它们表示为 xml - 然后我可以使用 wadl 来实际描述每个方法的参数类型等 - 这有什么限制吗?
    • 约束?除了写它以使其有效和正确之外。它是一个 REST 接口 - 您可以选择如何表示您的资源 (URL)、操作的含义(HTTP 方法)并将您想要的任何内容返回给客户端,让您可以做您需要做的事情。如果你想要非常严格的纪律和很多你/必须/要做的事情,你会使用 SOAP :)
    猜你喜欢
    • 2017-12-01
    • 2010-11-21
    • 2015-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-27
    • 1970-01-01
    • 2012-10-22
    相关资源
    最近更新 更多