Javascript XMLParser给出错误'';无法设置未定义的属性值'';

Javascript XMLParser给出错误'';无法设置未定义的属性值'';,javascript,xml,react-native,xml-parsing,Javascript,Xml,React Native,Xml Parsing,我在React原生应用程序中工作,只是尝试执行这段代码 fetch('https://ad13.adfarm1.adition.com/banner?sid=3915124&wpt=X.xml') .然后((response)=>response.text()) .然后((responseJson)=>{ log(“WorkingTillHere”,responseJson) xml_Img=new XMLParser().parseFromString(responseJson);//假设xm

我在React原生应用程序中工作,只是尝试执行这段代码

fetch('https://ad13.adfarm1.adition.com/banner?sid=3915124&wpt=X.xml')
.然后((response)=>response.text())
.然后((responseJson)=>{
log(“WorkingTillHere”,responseJson)
xml_Img=new XMLParser().parseFromString(responseJson);//假设xmlText包含示例xml
log(“ParserVideo,”,xml\u Img);
}).catch((错误)=>{
log(“ParserEx”,错误);
});
我可以在控制台窗口看到

在这里工作

但它不执行
XMLParser().parseFromString(responseJson)并且我正在获取控制台日志

ParserEx TypeError:无法设置未定义的属性“值”


同样的代码可以很好地使用这个URL链接
fetch('http://teststream.airtango.de/theo/vast.xml“)

react xml解析器不理解

<?xml version="1.0" encoding="UTF-8"?>

if(标记[i].indexOf('xml')<0&&tags[i].length>0){

也解决了这个问题:p

我认为您应该调用异步从http请求获取数据,尝试添加“等待获取”并将async添加到function@GaneshCauda-为什么?然后在适当的时候调用
链。我在原始XML中看到的唯一区别是,
]>
在它们各自的行上工作-而在失败的数据中,
在一行中-什么是XMLParser?是所有的链吗将被调用,但如果您不使用异步,则响应中将没有数据。您可以尝试使用几种方法来处理异步函数,使用async/await、promise或callback,但如果需要简单的方法,只需使用async和await。您可以在此处找到如何编写它:不…是
成功地抛出iTunes不起作用……事实上,试着对我刚写的代码稍加修改updated@RaihanAbbas-再次更新代码,以更宽容不同类型的“行尾”我的错…它实际上起作用了…Idk控制台窗口没有更新…请忽略上面的评论…我已经上传了你代码输出的更新截图…抱歉@Jaromanda X
fetch('https://ad13.adfarm1.adition.com/banner?sid=3915124&wpt=X.xml')
.then((response) => response.text())
.then((xmlText) => {
    // remove <?xml  ... etc header because react-xml-parser chokes on it
    if (xmlText.toLowerCase().substr(0,5) == '<?xml') {
        xmlText = xmlText.split(/\?>\r{0,1}\n{0,1}/).slice(1).join('?>\n');
    }
    console.log("WorkingTillHere",xmlText)
    xml_Img = new XMLParser().parseFromString(xmlText);    // Assume xmlText contains the example XML
    console.log("ParserVideo,",xml_Img);
}) .catch((error) => {
    console.log("ParserEx",error);
});
if (tags[i].indexOf('?xml')) {
if (tags[i].indexOf('?xml') < 0 && tags[i].length > 0) {