微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Ajax / jQuery从CouchDB读取连续提要

我想使用jQuery来监听来自CouchDB的持续更改 – 现在这可行:

http://localhost:5984/testdb/_changes?Feed=continuous

这意味着每次有db更新时我都会获得一个新的json行 – 但是如何使用jQuery从这个URL读取更新?

我尝试使用它,但它不起作用:

$.ajax(
{
  url : "http://localhost:5984/testdb/_changes?Feed=continuous&callback=?",dataType : 'json',success : function(data)
  {
    alert(data.results.length);
  }
});

编辑:$.ajax调用“success”函数并立即返回,它不会“轮询”更改..(下图中ajax列的时间轴列为16ms)

不,它不是一个跨域的ajax问题 – 我可以在fireBug中看到有一个具有正确数量的元素的响应

所以任何指导/建议都会受到赞赏 – 它不一定是jQuery – 普通的旧javscript也会这样做

解决方法

在我的头脑中,我可以想到两个很好的方法来做到这一点.

>使用计时器(即setTimeout();),每隔X秒对更改提要运行AJAX调用.您还将存储您收到的最后一个序列号,以便您可以告知更改源在下次轮询时从哪个序列号开始.这将防止重复数据并使响应更小.
>根据您需要支持的浏览器,您可以使用EventSource API.这是一个jQuery实现:https://github.com/rwldrn/jquery.eventsource

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐