解析rss feed。有些字段未定义

时间:2014-02-04 09:13:38

标签: parsing rss undefined

我正在尝试解析此RSS Feed - http://www.spiegel.de/international/germany/index.rss

我使用以下代码来解析它:

 $.ajax({
        url      : document.location.protocol + '//ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&callback=?&q=' +
        encodeURIComponent('http://www.spiegel.de/international/germany/index.rss'),
        dataType : 'json',
        success  : function (data) {
          if (data.responseData.feed && data.responseData.feed.entries) {
            $.each(data.responseData.feed.entries, function (i, e) {
              console.log("------------------------");
              console.log("title      : " + e.title);
              console.log("link      : " + e.link);
              console.log("pubDate     : " + e.pubDate);
              console.log("description     : " + e.description);
              console.log("pubDate     : " + e.pubDate);
              console.log("guid: " + e.guid);
            });
          }
        }
      });

在console.log中,只显示标题和链接。描述,pubDate和guid都是未定义的。

有人可以如此友善地解释我做错了吗?

1 个答案:

答案 0 :(得分:0)

您可以使用此gist检查Google提供的回复的整个“架构”。

您会看到每个条目都包含以下项目:

  • 标题
  • 链接
  • 作者
  • publishedDate
  • contentSnippet
  • 含量
  • 类别

所以,不幸的是,guid遗失了。您必须使用content(或contentSnippet)代替说明而使用publishedDate代替pubDate。如果您确实需要guid,请查看alternative offred by Superfeedr(我创建了Superfeedr!)。