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

PouchDb <-> CouchDb 复制

如何解决PouchDb <-> CouchDb 复制

当我关闭网络并在几秒钟后打开网络时,我遇到了复制问题。

打开网络后,我必须等待 3-5 分钟之间的复制同步:

enter image description here

在 prod 环境中可能会出现问题。

有什么想法吗?

解决方法

好的,对不起图片。

我了解到 pouchdb 中的复制和使用重试选项

我的代码:

  this.service.synch().then((data) => {
    this.lottieSpashScreen.hide();

  }).catch((err) => {
    console.log('no network or couch not respond')
    this.lottieSpashScreen.hide();

  });

服务中:

synch() {

let optionsToAndFrom = {
  live: true,retry: true,continuous: true
};
this.db.replicate.to(this.remote,optionsToAndFrom)

return this.db.replicate.from(this.remote)
  .on('complete',(info) => {
    this.db.replicate.from(this.remote,optionsToAndFrom) 
  }) 
  .on('error',(info) => {
    console.log('error')
  })}

有时如果设备断开连接很长时间,复制会停止,我必须重新启动应用程序。

在网络上我可以看到停止请求超过四分钟

编辑:在浏览器中一切正常,没有问题。

问题出在安卓设备上

编辑:

当我启动应用程序并且网络未连接时,我可以在日志中看到:

net::ERR_INTERNET_DISCONNECTED

那太好了。

但是当我启动应用程序和网络连接并断开连接几秒钟后,我只能在网络中看到该请求处于挂起状态而没有错误。当我在大约几分钟后打开网络时,这个请求被执行,但是当我在大约五分钟后关闭网络时,这个请求处于待处理状态,没有更改。

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