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

为什么 Pouchdb 同步过滤器会抛出 404 not found 错误

如何解决为什么 Pouchdb 同步过滤器会抛出 404 not found 错误

有谁知道为什么我使用过滤器时会出错,但硬编码的函数可以工作?

我正在使用 PouchDB,pouchdb-authentication

当我使用此同步并使用硬编码的 uName 登录以进行测试时:

const db = new PouchDB('http://admin:pass@<couch_ip>:5984/dvir/',{skip_setup: true});

db.logIn('01WIMA','uName',function (err,response) {
 //do stuff here
}).then((result) => {

const dvirstoreData = new PouchDB("dvir-StoreData");

dvirstoreData.sync(db,{
    live: true,retry: true,auto_compaction: true,filter: 'app/by_user',query_params: { "user": "uName" }        
  });
});

使用过滤器文档:

dvirstoreData.put({
  "_id": "_design/app","filters": {
    "by_user": "function(doc,req) { return doc._id === '_design/app' || return doc.user === req.query.user; }.toString()"
  }
})

出现错误

GET http:///dvir/_changes?style=all_docs&filter=app%2Fby_user&user=01WIMA&since=0&limit=100 404(未找到对象)

如果我对过滤器进行硬编码,这似乎有效:

dvirstoreData.sync(db,filter: function (doc) { return doc._id === "_design/app" || doc.user === '01WIMA'; }
  })

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