xmlReader失败:TypeError:无法调用方法' text'未定义的

时间:2014-07-10 20:03:50

标签: javascript xml node.js parse-platform httprequest

我正在使用npm xmlreader解析我在解析云上从雅虎天气收到的xml。我一直在使用git存储库中的示例和这里的示例:https://www.npmjs.org/package/xmlreader试图看看我是否可以获取任何节点的内容,而且我没有运气。我是这样做的:

Parse.Cloud.job("getPage", function(request, status) {
var response = "I never get set";
Parse.Cloud.httpRequest({
    url: 'http://weather.yahooapis.com/forecastrss?w=2442047&u=f',
    success: function (httpResponse) {
        console.log("Got here yo");     
        response = httpResponse.text;
        response = response.toString();
        response = parseXML(response);
        status.success(response.toString());
    },
    error: function (httpResponse) {
        status.error('Request failed with response code ' + httpResponse.status);
    }
});

});

function parseXML (p1)
{ 
   var xmlreader = require('cloud/xmlreader.js');
   xmlreader.read(p1, function (err, xmldata) {
   if(err) return console.log(err);
   console.log( xmldata.title.text() );
  });
  return "hello";
}

每次我运行工作时都会收到错误。

失败:TypeError:无法调用方法' text'未定义的

<title>Yahoo! Weather - Los Angeles, CA</title>
<description>Yahoo! Weather for Los Angeles, CA</description>
<language>en-us</language>
<lastBuildDate>Thu, 10 Jul 2014 10:47 am PDT</lastBuildDate>
<ttl>60</ttl>

我已正确导入所有内容并正确安装。如果我只是调用xmlreader.text()它就不会失败但是没有什么可以打印的是它没有正确读取xml?任何帮助都会非常感谢!

1 个答案:

答案 0 :(得分:1)

我没有正确导航节点。我试图访问标题时错过了一个节点我只是想做res.title而不是我需要做res.rss.title。