JVic Asked:2020-10-02 20:56:19 +0000 UTC2020-10-02 20:56:19 +0000 UTC 2020-10-02 20:56:19 +0000 UTC 同时支持 JSON & XML 的 RESTfull api 772 告诉我如何正确组织支持多种“响应格式”(JSON 和 XML)的 Web 服务。客户端如何以何种形式向服务器表明他(客户端)希望看到响应? 您可以在查询字符串本身中指定响应类型 您可以在标题中传递返回格式 很可能你可以做其他事情...... 但是什么是“正确的”? json 2 个回答 Voted Best Answer Barmaley 2020-10-02T21:20:08Z2020-10-02T21:20:08Z 在我看来,最好的方法是做这样的事情: http://myserver.domain/api/request.json http://myserver.domain/api/request.xml 也就是说,将预期格式指定为扩展名。 第二种选择: 您可以在标题中传递返回格式 这绝对是一种反模式 Борис 2020-10-02T21:42:48Z2020-10-02T21:42:48Z 我们的服务(通常)可以三种格式(对于任何 HTTP 方法)接收数据。它是 (1) 一个简单的对列表ключ=значение,(2) 一个 JSON 对象,以及 (3) 一个 XML 文档。可以返回 JSON 或 XML。我们可以任意使 XML 成为我们服务的默认响应格式。 因此,在请求 (1) 和 (3) 类型的情况下,客户端将收到 XML 响应。对于 (2) 类型的请求,它接收 JSON。 为了实现服务的这种行为,需要一个额外的传入数据解析器和两个用于相应响应格式的方法。
在我看来,最好的方法是做这样的事情:
也就是说,将预期格式指定为扩展名。
第二种选择:
这绝对是一种反模式
我们的服务(通常)可以三种格式(对于任何 HTTP 方法)接收数据。它是 (1) 一个简单的对列表
ключ=значение
,(2) 一个 JSON 对象,以及 (3) 一个 XML 文档。可以返回 JSON 或 XML。我们可以任意使 XML 成为我们服务的默认响应格式。因此,在请求 (1) 和 (3) 类型的情况下,客户端将收到 XML 响应。对于 (2) 类型的请求,它接收 JSON。
为了实现服务的这种行为,需要一个额外的传入数据解析器和两个用于相应响应格式的方法。