如何解决PouchDb <-> CouchDb 复制
当我关闭网络并在几秒钟后打开网络时,我遇到了复制问题。
打开网络后,我必须等待 3-5 分钟之间的复制同步:
在 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 举报,一经查实,本站将立刻删除。