0
www.server1.com에서 PouchDB를 사용하여 www.server2.com에 설치된 CouchDB와 통신하려고합니다. 서버에서PouchDB/CouchDB 복제가 허용되지 않는 방법으로 실패 함
error: true
message: "Database encountered an unknown error"
name: "unknown_error"
status: 405
statusText: "Method Not Allowed"
: 데이터를 복제하려고하면, 다음과 같은 오류가
$ curl -X GET http://admin:[email protected]:5984/_config/cors
{"credentials":"false","origins":"*","methods":"GET,POST,PUT,DELETE,OPTIONS",
"headers":"accept,authorization,content-type,origin,X-Couch-Id,X-Couch-Rev"}
그리고 자바 스크립트
가 : 여기var localDB, remoteDB, allSynced = null;
function initializePouch(){
localDB = new PouchDB('databaseone');
remoteDB = new PouchDB('http://admin:[email protected]<remote ip>:5984/databaseone');
localDB.info().then(function (info) {
console.log('Get DB info', info);
});
retryReplication();
}
function retryReplication() {
localDB.sync(remoteDB, {live: true}).on('change', function (change) {
console.log('Replication done.');
}).on('error', function (err) {
console.log('error while replicating');
console.log(err);
if(!allSynced) {
setTimeout(retryReplication, 30000);
}
});
}
initializePouch();
콘솔의 내용입니다 :
start.html:229 Get DB info Object {doc_count: 0, update_seq: 0, db_name: "database",
auto_compaction: false}
시도해 보았습니다. admin : secret이 있거나 없는데 매번 실패했습니다. Apache CouchDB 1.6.1
아이디어가 있으십니까?
나는 add-cors-to-couchdb를 실행하려고 시도했지만 아무 것도하지 않는 것 같습니다. 여기에 현재 local.ini 설정이 있습니다 (couchdb -c를 사용하면 목록의 마지막 부분입니다). "아파치": { "enable_cors": "true"로, }, "고르": { "자격 증명": "true"로, "헤더": "동의, 권한 부여, 콘텐츠 유형, 원본, X-Couch-Id, X-Couch-Rev ", "방법 ":"가져 오기, POST, 붙여 넣기, 삭제, 옵션, 머리글 ", – Vallieres
상자에 sshing부터 작업 요청을받을 수 있습니다. 그리고 그들은 인증을 요구합니다. 내 지역 출신이므로이 상자를 사용할 수 없습니다. curl -X GET http : // admin : secret @ : 5984/_config/cors –
Vallieres
서버에서 열린 포트는 문제가되지 않았습니다. 당신의 코르 생각은 여전히 좋았고 포트가 열리면 작동했을 것입니다 :) 감사합니다! – Vallieres