jQuery外部RSS Feed解析器?

时间:2010-01-24 15:44:35

标签: javascript jquery jquery-plugins rss feedparser

我一直在寻找一个体面的jQuery feed / XML解析器,并找到了很好的插件,比如jFeed和jParse(以及其他几个)。这些都不支持检索外部提要,这是我所追求的。

非常肯定这是jQuery的$ .ajax()方法,而不是插件本身(因为它们将由此构建)。

我是否可以使用某种黑客来覆盖jQuery或原始JavaScript替代方案?更好的仍然是一个更好的插件,但即使是我发现的更受欢迎的插件也不支持它。

由于

6 个答案:

答案 0 :(得分:4)

答案 1 :(得分:2)

我最近构建了AMJR(Asynchronous Multifeed JS Reader),因为我找不到类似你问的内容...

编写AMJR是为了满足特定需求:用JS编写的多页面阅读器。换句话说,一个提要阅读器,它将多个提要作为输入,并按时间顺序从所有提要输出最后一个X.您肯定会在服务器端语言中找到但不在JS中的实现!在用户的浏览器(客户端)上具有这样的功能可以解除一些处理负载,尤其是在碰巧集成外部馈送的高流量站点上。将AMJR视为您自己的“Yahoo Pipes”小部件,以便在同一输出块中混合使用Feed。

总结AMJR的事情:

  • 它可以按时间顺序同时对多个Feed进行排序。
  • 实施简单,体积小,加载快。
  • 它是非阻塞的(异步)。这意味着浏览器将在加载Feed时继续加载页面的其余部分。
  • 它可以处理大量的Feed,但最终的性能取决于用户的互联网连接下载速度。在这个例子中,我故意选择了一个非常多的外部输入(150+),这样你就可以看到a)非阻塞过程和b)它的速度有多快。
  • 通过谷歌的基础设施(或可选择通过雅虎的YQL)“代理”供稿,在这些基础设施中,它们被“标准化”,然后转换为(压缩的)JSON,然后再发送回用户的浏览器。
  • 建立在jQuery之上,但依赖性非常小,你可以很容易地使它适应Mootools,YUI等。
  • 适用于所有现代浏览器。

信息/下载地址:http://nuevvo.com/labs/amjr/

享受!

答案 2 :(得分:1)

答案看起来就在这个页面上,使用YQL而不是我自己的PHP代理来处理请求。

http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/

在发现无法进行简单的JavaScript调用来处理这些请求之后,这个jQuery插件看起来很理想,稍后会尝试一下。

事实上,对于没有jQuery的RSS源解析,您可以使用Google AJAX Feed API。是一种享受。

http://code.google.com/apis/ajaxfeeds/examples.html

感谢您的回复

答案 3 :(得分:0)

如果通过检索外部供稿,您的意思是从您的网络应用程序所在的其他域获取供稿,则不能(Same origin policy)。

您需要在服务器端使用某种代理,例如PHP或python脚本(或您喜欢的任何语言)查询外部源并将其内容返回给您的应用程序。

您检查过的jFeed插件有一个PHP代理示例。

答案 4 :(得分:0)

jFeed有一个php代理。我只是有这个需要,jFeed能够检索外部。如果不使用php是必需的,请编辑您的评论。

答案(据我们所知):使用jFeed!

::但是我刚刚发现你的饲料“形态不好”会破坏jFeed。 ::警告

答案 5 :(得分:0)

我只能推荐jFeed。我使用它的一个分叉(https://github.com/uhlenbrock/jfeed)和我的phonegap项目。 fork增加了对解析creator标记的支持,并且开箱即用。