首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ibm-cloud/cloudant包中获取'on‘事件侦听器?

如何在ibm-cloud/cloudant包中获取'on‘事件侦听器?
EN

Stack Overflow用户
提问于 2021-08-09 00:12:54
回答 1查看 33关注 0票数 0

废弃的@cloudant/cloudant被ibm-cloud/cloudant包取代。在以前的版本中,我使用了以下代码片段

代码语言:javascript
复制
const feed = dummyDB.follow({ include_docs: true, since: 'now'})

feed.on('change', function (change) {
     console.log(change)
   })
feed.on('error', function (err) {
     console.log(err)
})

feed.filter = function (doc, req) {
     if (doc._deleted || doc.clusterId === clusterID) {
       return true
     }
     return false
   }

您是否可以分享一个代码,我可以在新的npm包ibm- feed.on /cloudant中获得类似于上面代码的云事件侦听器。

EN

回答 1

Stack Overflow用户

发布于 2021-08-11 15:50:41

目前,@ibm-cloud/cloudant包中的更改还没有事件发射器。您可以通过以下任一方式来模拟该行为:

轮询postChanges (在新结果之后更新since值)和处理响应result属性,该属性是一个ChangesResult。它又有一个results属性,该属性是ChangesResultItem元素的数组,每个元素都等同于事件处理函数的change参数。

使用continuous的提要类型调用postChangesAsStream,并处理在响应result属性中返回的stream,每一行都是一个遵循ChangesResultItem结构的JSON对象。在这种情况下,您可能还希望配置心跳和超时。

在这两种情况下,您都需要处理错误,以便在出现网络故障等情况下重新连接。

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

https://stackoverflow.com/questions/68705632

复制
相关文章

相似问题

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