3

我正在尝试将数据从 CouchDB 复制到 PouchDB 以使用代码从 CouchDB 中提取数据以进行离线存储:

db.replicate.from('http://test.iriscouch.com/todo','idb://todo', function (err, changes) {
if (err) {
    console.log(err);
}
else {
    console.log(changes);
}});
$scope.loadTodos(response.rows);

我收到这些错误:

  • 加载资源失败:服务器响应状态为 405(不允许方法)
  • XMLHttpRequest 无法加载http://test.iriscouch.com/todo/。Access-Control-Allow-Origin 不允许 Origin null。
  • 未捕获的类型错误:无法调用未定义的方法“id”

有什么我做的不对吗?

4

1 回答 1

4

为了使 PouchDB 与 CouchDB 通信,它需要在同一个域上运行,或者您需要在 Pouch 和 Couch 之间安装 CORS-Proxy,这是由于浏览器强制执行的同源策略,CouchDB 的下一个版本有望本机支持这一点,但同时对于生产站点,我会发现使用 nginx 让 pouch 和 couch 在同一个域中运行是最简单的

于 2012-10-04T15:35:12.233 回答