使用jQuery阅读RSS feed

时间:2009-06-14 21:53:12

标签: jquery xml ajax rss

我正在尝试使用他们的RSS feed和jquery显示我最新的stumbleupon项目的标题。 我的功能是:

function get_stumbleupon() {
    $.get("http://rss.stumbleupon.com/user/fredkelly/", function(data) {
        alert(data.title);
    }, "xml");
}

什么都不返回...我只是想获得有关Feed中单个最新项目的一些信息 - 我该怎么做?

4 个答案:

答案 0 :(得分:4)

Here's a tutorial关于如何使用JQuery进行跨域ajax。

答案 1 :(得分:1)

ÓlafurWaage提供了一个很好的跨站点请求主题,但还有另一篇文章更符合您的Cross Site RSS reading问题。

答案 2 :(得分:1)

这是我的小脚本:

<script type="text/javascript">
jQuery(document).ready(function(){
 jQuery.ajax({
   url: "/feed.xml", // RSS url
   success: function(msg){
     jQuery('#blip').html(''); // where to put RSS
     jQuery('entry',msg).slice(0,3).each(function(){ // slice: get only first 3 posts
        var html = '<div>';
        var upd = jQuery('updated', this).text().replace(/[TZ]/g, ' ');
        var upd = jQuery.trim(jQuery('updated', this).text());
        upd = upd.replace(/-/g,"/").replace(/T/," ").replace(/Z/," UTC");
        upd = upd.replace(/([\+-]\d\d)\:?(\d\d)/," $1$2");
        updf = new Date(upd).toLocaleString();
        html += '<p class="post_date">' + updf + '</p>';
        html += '<div class="post_content"><span>' + jQuery('content', this).text() + '</span></div>';
        html += '</div>';
        jQuery(html).appendTo('#blip');
     });
   },
   error: function (XMLHttpRequest, textStatus, errorThrown) { alert(errorThrown);}
 });
});
</script>

答案 3 :(得分:0)

正如上一张海报(Waage)所提到的,你可能正在做一些跨网站脚本,这在大多数浏览器上都是违反安全规定的。您需要做的是创建某种传递(客户端调用您的网站,您的网站下载其他网站的内容,并将其返回给客户端)。

无论您使用何种服务器后端,这通常都非常简单。它还使您能够与其他人的数据(如缓存)一起执行一些高级功能。