簡體   English   中英

如何從CouchDB復制到PouchDB?

[英]How to replicate from CouchDB to PouchDB?

我已經建立了一個本地CouchDB數據庫,我想將它復制到PouchDB數據庫,在localhost上運行的網頁中使用JavaScript。

使用下面的代碼我得到這個錯誤:

Access-Control-Allow-Origin不允許使用origin http://localhost

通過從REMOTE中刪除http:// ,我沒有收到錯誤,但沒有文檔顯示為已復制。

從Chrome DevTools查看IndexedDB數據庫,我可以看到數據庫已經創建(但似乎沒有文檔)。

在Chrome 29.0.1535.2金絲雀中運行。

我可以在本地執行此操作,還是需要設置遠程CouchDB數據庫並啟用CORS(根據CouchDB文檔 )?

var REMOTE = 'http://127.0.0.1:5984/foo';
var LOCAL = 'idb://foo';

Pouch(LOCAL, function(error, pouchdb){
  if (error) {
    console.log("Error: ", error);
  } else {
    var db = pouchdb;
    Pouch.replicate(REMOTE, LOCAL, function (error, changes) {
      if (error) {
        console.log('Error: ', error);
      }
      else {
        console.log('Changes: ', changes);
        db.allDocs({include_docs: true}, function(error, docs) {
          console.log('Rows: ', docs.rows);
        });
    }});
  }
});

您可以在本地執行此操作,但必須啟用CORS。

當您從遠程URL中刪除“http://”時,Pouch將把您的數據庫復制到一個名為“localhost”的新的IndexedDB支持的Pouchdb(或實際上是“_pouch_localhost”或類似的東西 - 它添加了一個前綴)。

除非您從CouchDB本身(在相同的主機和端口上)提供此頁面,否則您將需要啟用CORS以使復制到CouchDB工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM