首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有CouchDB _changes的长轮询

没有CouchDB _changes的长轮询
EN

Stack Overflow用户
提问于 2018-12-04 14:09:17
回答 1查看 112关注 0票数 1

我希望在couchDB中使用长轮询选项,但不使用_changes视图。数据库具有以下观点:

代码语言:javascript
复制
function (doc) {
  if(doc.job)
    emit(doc._id, 1);
}

因此,它会发出所有在文档中带有“作业”标签的文档。请注意,在这个DB中还有很多其他的东西。现在,我想使用一个长轮询,只要DB中没有带有作业标记的文档,连接就保持打开状态。一旦有带有作业标记的文档,db就会将其发送到客户端,并且应该关闭连接。客户端现在可以执行此任务,向db发送一个delete命令以删除作业,然后再次开始侦听。所以我的想法是把这个视图称为这样的:

代码语言:javascript
复制
http://mycouch/mydb/_design/visualize/_view/get_jobs?feed=longpoll&include_docs=true

但是,似乎只有在_changes视图中才能使用长轮询。有什么解决办法吗?

谢谢你的帮助

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-05 09:21:34

_changes是在您的情况下需要使用的提要。Yo可以使用它过滤提要,只接收对“作业”标记的文档的更改。您可以使用视图映射函数来完成此操作。

docs=true

您将通过这个提要接收数据库中“作业”标记的文档上的任何更新(创建/更新/删除)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53614781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档