PouchDb不与Cordova项目中的CouchDb同步

时间:2015-09-08 08:58:58

标签: angularjs cordova couchdb pouchdb

CORS已启用并正常运行。

我们有一个Cordova应用程序,它第一次连接到CouchDB时同步正常。之后db.sync()无法正常工作。只有当我们使用飞行模式离线和在线时,它才会在短时间内再次同步。

我们有一个angular.factory,可以创建本地邮袋db并设置与远程couchDB的同步

(function () {

angular
  .module('IkasApp')
  .factory('pouch', ['$http', ThisFunction]);


function ThisFunction($http) {
    PouchDB.debug.enable('*');
    var db = new PouchDB('test_suite_db');

    var remoteCouch = 'http://estouch.iriscouch.com/_utils/database.html?test_suite_db';



    if (remoteCouch) {
        var opts = {
            live: true
        };
        db.sync(remoteCouch, opts);
    }

    return db;


}
}());

我们可以在pouchDB(test_suite_db)中创建和更新文档,但它不是连续的实时同步。 正如你自己所看到的,很多灵感来自于这个github。我们正在运行Pouch 4.0.1。

2 个答案:

答案 0 :(得分:0)

您似乎正在使用同步选项{live: true}。你试过{live: true, retry: true}吗?

答案 1 :(得分:0)

如果您重试为false并使用错误处理程序,那么您至少可以看到错误。

.on('error', function(err){console.log(JSON.stringify(err));});