【问题标题】:Parsing XML RSS feed using jQuery and Ajax使用 jQuery 和 Ajax 解析 XML RSS 提要
【发布时间】:2016-01-17 17:05:10
【问题描述】:

我正在尝试解析 xml RSS 提要 (http://blog.counter-strike.net/index.php/feed/),目前我可以获取包含在 <link><description> 中的内容,但是我无法获取 <title>,因为每当我尝试获取它时给我博客标题,我得到了我自己网页的标题。

我觉得奇怪的是,如果我不断刷新页面,最终会出现博客的实际标题。不知道是什么原因造成的,但理想情况下,我宁愿只拥有博客的标题,而不是我自己的网页。

我看过这个问题,它帮助我开始了:parsing xml using jquery and ajax

下面是我目前的代码

$(document).ready(function () { $.ajax({ url: 'http://cors.io/?u=http://blog.counter-strike.net/index.php/feed/', type: 'GET', dataType: "xml" }).done(function(xml) { $.each($("item", xml), function(i, e) { $("#feed").append($(e).find("item title")); $("#feed").append("<br />") $("#feed").append($(e).find("description")); $("#feed").append("<br />") $("#feed").append($(e).find("link")); $("#feed").append("<br />") }); }); });

除了检索博客的标题之外,如果有人能告诉我如何将描述中显示的 &amp;#8217; 之类的东西替换为它们应该是的东西,我将不胜感激。

终于可以从 RSS 提要中检索和显示图像和视频了吗?似乎它们包含在 &lt;content:encoded&gt; 中。

【问题讨论】:

    标签: jquery ajax xml rss


    【解决方案1】:

    我不太确定为什么我得到的是网站标题而不是 RSS 项目标题,但我最终得到了这个工作。下面是我用来检索 RSS 项目的标题和 url 的代码。

    $(document).ready(function () {
        $.ajax({
            url: 'http://cors.io/?u=http://blog.counter-strike.net/index.php/feed/',
            type: 'GET',
            dataType: "xml"
        }).done(function(xml) {
    
            $.each($("item", xml), function(i, e) {
    
                var blogNumber = i + 1 + ". ";
    
                var itemURL = ($(e).find("link"));
                var blogURL = "<a href='" + itemURL.text() + "'>" + itemURL.text() +"</a>";
    
                var itemTitle = ($(e).find("title"));
                var blogTitle = "<h4>" + blogNumber + itemTitle.text() + "</h4>";
    
                $("#feed").append(blogTitle);
                $("#feed").append(blogURL);
    
            });
        });
    });
    

    我发现通过将接收到的值分配给一个变量来调试从 RSS 项中检索的内容更容易,然后我可以使用 Google Chrome DevTools 检查该值。

    我决定不从 RSS 提要中获取描述和媒体文件(如图像/视频),而是在我的网页列表中显示标题和网址。如果其他人想提供有关如何使描述和媒体文件正常工作的答案,我很乐意批准它作为解决方案。

    希望这对遇到类似问题的人有所帮助。

    【讨论】:

    • 没有人得到“被 CORS 策略阻止:请求的资源上没有 'Access-Control-Allow-Origin' 标头。”?
    猜你喜欢
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-23
    • 2012-05-03
    相关资源
    最近更新 更多