我正在使用 Angular 2 将数据发布到返回 XML 响应的 URL,我想将数据转换为 JSON,所以我使用xml2js。
转换进行得很好,但我在“订阅”块中得到未定义的“数据”。如果我在拧,请纠正我,我猜因为 xml2js 是一个异步操作,“数据”是未定义的。那么我该如何处理这种承诺的承诺情况并正确返回转换后的 JSON 数据呢?下面的代码:
this.http.post(this._yourUrl, formdata.toString(), options)
.map(res => {
xml2js.parseString( res.text(), function (err, result) {
console.dir(result); // Prints JSON object!
return result;
});
})
.subscribe(data => {
console.log(data);
});
任何帮助深表感谢。谢谢!