【问题标题】:Cloudant to PouchDB replication with a proxy使用代理的 Cloudant 到 PouchDB 复制
【发布时间】:2014-03-21 14:56:13
【问题描述】:

我正在使用 PouchDB 并尝试从 cloudant 服务器进行复制。 我还有一个 nodejs 应用程序,它使用here 描述的技术代理对 cloudant 的请求

var request = require('request')

module.exports = function(pattern, host){
  return function(req, res, next){
    if(req.url.match(pattern)){
      var db_path = req.url.match(pattern)[1]
        , db_url = [host, db_path].join('/');
      req.pipe(request[req.method.toLowerCase()](db_url)).pipe(res);
    }else{
      next();
    }
  }
}


app.use(forward(/\/db\/(.*)/, TARGET_URL));

我像这样在我的 pouchdb 上调用复制:

db.replicate.from('http://localhost/db/myDb', {continuous: true})

在网络选项卡中查看第一个请求成功,但是发出后续请求,但不是调用http://localhost/db/myDb,而是调用http://localhost/db,因此导致 404。由于某种原因,它已经删除了我的名称数据库。

知道为什么会这样吗?

【问题讨论】:

    标签: couchdb cloudant replicate pouchdb


    【解决方案1】:

    试试 Smileupps。这是一个免费的couchdb hosting服务,支持最新版本的CouchDB(1.6.0),同时兼容PouchDB。

    【讨论】:

    • 谢谢,我真的很高兴使用沙发!
    【解决方案2】:

    有一些假设主机/数据库名称设置的逻辑,您可以通过将应用程序的最后一行更改为app.use(forward(/\/db\_(.*)/, TARGET_URL)); 来使用http://localhost/db_myDb 名称设置,尽管 PouchDB 目前还存在一些其他问题带cloudant的版本

    【讨论】:

      【解决方案3】:

      我听说至少有人说他们通过同步 PouchDB CouchDB Cloudant 获得了成功。 PouchDB 为 CouchDB 和 IrisCouch 提供一流的支持;对于 Cloudant 或 Couchbase Sync Gateway 等其他提供商,我们正在努力。

      【讨论】:

        猜你喜欢
        • 2014-10-27
        • 1970-01-01
        • 1970-01-01
        • 2013-08-01
        • 2016-12-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-19
        相关资源
        最近更新 更多