PouchDB数据库遇到未知错误

Var*_*kka 6 couchdb pouchdb

我从couchDB数据库复制数据时收到"数据库遇到未知错误"消息.它开始复制,下载一些文档,然后在复制一些文档后失败.我无法得到确切的问题为什么会发生这种情况.

CustomPouchError {status:500,name:"unknown_error",消息:"数据库遇到未知错误",错误:true,结果:Object}

Gig*_*nco 0

原因可能有很多:

  1. CORS 问题,因为它们未在服务器端启用:https://pouchdb.com/getting-started.html#enabling_cors
  2. 如果要下载的文档太大,可能会出现超时问题:在这种情况下,您可以在数据库复制期间在 couchDB 配置和客户端上设置超时(https://pouchdb.com/api.html #复制
  3. 好多其它的 :)

但是,我的最终解决方案是在复制中使用重试选项( https://pouchdb.com/api.html#replication),强制在失败时重试复制:

    PouchDB.replicate(localDB, baseRemoteDB, 
        {
            live: true,
            retry: true,
            timeout: false
        }
    )
Run Code Online (Sandbox Code Playgroud)

因此,复制每两个文档就会暂停一次(而不是因未知错误而停止),并在几分钟后从第一个新文档开始恢复。重试时间也可以通过退避函数自定义(请参阅上一个文档)