私は PouchDB を使用しており、cloudant サーバーから複製しようとしています。ここで説明されている手法を使用して、cloudant へのリクエストをプロキシする nodejs アプリもあります。
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
404http://localhost/db
になります。何らかの理由で、データベースの名前が削除されました。
なぜこれが起こっているのですか?