我正在开发一个应用程序,我正在尝试在nodejs和express中执行xmlhttp请求但是我的responseXML无法正常工作并且它什么也没有返回..这是我的代码: -
var XMLHttpRequest=require("xmlhttprequest").XMLHttpRequest;
var xml2js=require("xml2js");
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
console.log("State:"+this.readyState);
if(this.readyState==4){
var result=this.responseXML;
console.log(result);
}
};
xhr.open("GET","http://isbndb.com/api/books.xml?access_key=QMMEUNJB&results=prices&index1=isbn&value1=0061031321");
xhr.setRequestHeader('Content-type', 'text/xml');
xhr.send();
输出结果为: -
Output:-
State:1
State:1
State:2
State:3
State:4
在State:4
之后返回一个空行答案 0 :(得分:1)
xmlhttprequest
包没有(当前)支持XML - 请参阅https://npmjs.org/package/xmlhttprequest的底部
您已经包含xml2js
库,但您的代码似乎没有在任何地方使用它。尝试替换
var result=this.responseXML;
console.log(result);
用这个:
xml2js.parseString(this.responseText, function (err, result) {
console.dir(result);
});