REST混合JSON和XML?
我正在开发一个小型Web服务。直到现在,我一直在用JSON做出回应。但是,我现在正在遇到的问题是我的web服务谈判,看起来像这样的XML响应的服务器:REST混合JSON和XML?
<obj somedata="h1" somedata2="h5" xmldata="<xm debug="yes"/></xm>"/>
xml数据属性包含XML。我可以运行json_encode()(PHP)。但json_encode似乎不想编码XML数据属性。
如果我的Web服务在这种情况下用xml响应,而在其他情况下用JSON响应,这是不好的做法吗?当然,我会将Content-Type
设置为application/xml
,这也将记录在该服务的文档中。
但这是不好的?我是否应该尽我所能将其转换为JSON,仅仅是因为我在其他API函数中使用JSON进行响应?
回答:
如果我的网络服务在这种情况下用xml响应 和JSON在其他情况下是不好的做法?
是的,在某些情况下返回JSON并在其他情况下返回XML是可怕的做法。但你已经知道了。
更糟的是, “XML” 你别说,
<obj somedata="h1" somedata2="h5" xmldata="<xm debug="yes"/></xm>"/>
不是XML可言,因为它不是well-formed:属性值不能包含原始XML;你已经转义:
- 双引号字符(
"
) - 小于字符(
<
)。
建议:有一个JSON接口或XML接口,或理想两者分别。
如果不能兼得,使用JSON,除非:
- 您的数据文档为中心。
- 有一个行业标准XML模式管理您的数据。
- 您已经知道您的开发人员偏好使用XML。
以上是 REST混合JSON和XML? 的全部内容, 来源链接: utcz.com/qa/262869.html