我的nodeJS脚本需要进行put / post操作以提供xml文件作为有效负载。
然而,它仍然在这里说:
Object.keys(data).forEach(function(key) {
^
TypeError: Object.keys called on non-object
at Function.keys (native)
at Object.exports.getBodyString
将数据打印到stdout为我提供了文本中的整个xml文件。 数据类型是字符串。
exports.getBodyString = function(data) { var body = '';
if(data && !this.isEmpty(data)){
Object.keys(data).forEach(function(key) {
var val = data[key];
if (exports.isArray(val)) {
for (var i=0; i<val.length; i++) {
body += key + '[]=' + encodeURIComponent(val[i]) + '&';
}
} else {
body += key + '=' + encodeURIComponent(val) + '&';
}
});
return body; } return null; };
我尝试重新创建的是:
curl -X POST -H "Content-Type: application/xml" -d @config.xml "http://localhost:11000/oozie/v1/jobs?action=start"
结束 如何正确解析一段时间的xml文件(缩进和新行以及所有内容)到正确的JSON?我正在与xml2js斗争。这似乎返回[Object],[Object],...而不是正确的值。
答案 0 :(得分:0)
我仍然可以在使用
时传递xml文件并跳过整个功能headers: {"content-type": "application/xml"}
而不是
headers: {"content-type": "application/x-www-form-urlencoded"},