Json 对express API的XML响应
我有一个NodeJS程序,它使用express框架。发生的情况是,使用Postman向我的API发出POST请求,我根据需要处理请求(这非常有效) 但是,我希望将XML响应发送回API调用。在网上进行一些挖掘,我发现了这个图书馆- 我试图使其适应我的代码,因此我需要将以下json对象转换为XML响应:Json 对express API的XML响应,json,node.js,xml,express,Json,Node.js,Xml,Express,我有一个NodeJS程序,它使用express框架。发生的情况是,使用Postman向我的API发出POST请求,我根据需要处理请求(这非常有效) 但是,我希望将XML响应发送回API调用。在网上进行一些挖掘,我发现了这个图书馆- 我试图使其适应我的代码,因此我需要将以下json对象转换为XML响应: var responseJson = [{ "methodResponse": { "params": { "param": { "va
var responseJson = [{
"methodResponse": {
"params": {
"param": {
"value": {
"struct": {
"member": [
{
"name": "myValue",
"value": {
"string": "hi"
}
}
]
}
}
}
}
}
}];
然后在回答中,我做了以下几点:
res.header('Content-Type', 'text/xml');
res.send(xml(responseXml, true));
然而,这只会返回:
<methodResponse/>
邮递员的回复中没有其他内容
知道其余的发生了什么吗?为什么只返回一行?有更好的方法吗?谢谢您需要在对象周围放置方括号
const data = [{
"methodResponse": [{
"params": [{
"param": [{
"value": [{
"struct": [{
"member": [{
"name": "myValue",
},{
"value": [{
"string": "hi"
}]
}]
}]
}]
}]
}]
}]
}];
这将产生:
myValuehi
哦。。。为什么需要方括号?更新了我的答案以修复成员对象。我不太熟悉xml,所以不是100%,但我猜元素不像json对象那样是唯一的。