我想与HTTP端点进行通信,对于其多部分响应,我希望第1部分(或引用内容处理文件名)为JSON,第2部分为XML,这是正确的方法那样做?
我可以同时包含JSON和XML,但仅此一点并不表达我想要为每个部分设置不同格式的意图。
编辑: 假设我有一项服务,现在它正在返回以下内容:
Content-Type: multipart/mixed; boundary=--37adc569155a4943b203e28a422cb96f
Content-Length: ...
----37adc569155a4943b203e28a422cb96f
Content-Type: application/xml; charset=utf-8
Content-Disposition: result
<Result>
...
</Result>
----37adc569155a4943b203e28a422cb96f
Content-Type: application/json; charset=utf-8
Content-Disposition: state
{ "Score": 42, ... }
----37adc569155a4943b203e28a422cb96f--
我可以,并且希望支持以不同格式传回数据,例如,使用协议缓冲区发送state
或使用JSON进行result
。
我认为正确的方法是通过HTTP Accept
标头,但是我如何与JSON中的state
和协议中的result
进行通信?缓冲?如果Accept
标题不可行,那么我应该使用什么呢?
答案 0 :(得分:0)
我认为您要做的事情并非由任何RFC定义,并且要求使用自定义标头字段。我会添加像
这样的标题X-Foo-Accept-State: application/json; charset=utf-8
X-Foo-Accept-Result: application/xml; charset=utf-8
(其中“Foo”是您的公司名称。有关命名自定义标题字段的最佳方法的参数,请参阅其他地方。)