【发布时间】:2019-06-29 09:21:59
【问题描述】:
我正在使用 Ajax/jQuery 从 RSS 提要中提取一些内容,但它似乎无法读取名为“链接”的 XML 节点的内容。
这是 XML 的简化版本:
<?xml version="1.0" encoding="UTF-8"?>
<channel>
<item>
<title>Title one</title>
<link>https://example.com/</link>
<pubDate>Mon, 12 Feb 2019</pubDate>
</item>
<item>...</item>
<item>...</item>
</channel>
</xml>
我正在使用的代码:
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
$('item', this.responseText).each(function(){
var thisPostData = {};
thisPostData.title = $(this).find('title').text();
thisPostData.link = $(this).find('link').text();
thisPostData.date = $(this).find('pubDate').text();
posts.push(thisPostData);
});
console.log(posts);
}
};
var posts = [];
xhttp.open('GET', 'https://example.com/rssfeed/', true);
xhttp.send();
您会看到我正在尝试将每个“项目”添加到一个对象,并将它们存储在“帖子”数组中。 'Title' 和 'pubDate' 存储良好,但 'link' 不是。
有问题的实际 RSS 提要包含大量额外数据,除了“链接”节点之外,我可以阅读所有这些数据。有什么建议为什么称为“链接”的节点会与所有其他节点的行为不同?
【问题讨论】:
标签: javascript jquery ajax xml rss