2011-01-11 3 views
1

ここでは次のようなことがあります。node.jsを使ってローカルのCouchDBインスタンスに接続しています。node.jsシステムプロキシが設定されているときにローカルホストのクライアント要求をしています

問題:「応答」イベントが発生していません。だから私はそれが接続を取得していないと仮定しています。

var http = require('http'), 
sys = require('sys'), 
url = require('url'); 

var server = http.createServer(function (request, response) { 
var client = http.createClient(5984, '127.0.0.1'); // couchdb 
var request_db = client.request('GET', '/_all_dbs'); 
console.log('Created a request for _all_dbs'); 
request_db.addListener('response', function(response_db) { 
    console.log('Some response from CouchDB'); 
}); 
}).listen(8124); 
console.log('Server running at http://127.0.0.1:8124/'); 

唯一の唯一の出力は、次のとおりです。

Server running at http://127.0.0.1:8124/ 
Created a request for _all_dbs 

私もこれがプロキシ問題がある可能性があります推測しています。 Ubuntu 10.10では、システム全体のプロキシ設定がありますが、127.0.0.1を無視するように指示しています。 127.0.0.1:5984/_all_dbsにカールすると「エラーコード:502プロキシエラー」というエラーが表示されます。

+0

システム設定よりも優先となります本当にプロキシエラーのように見えます。 http://127.0.0.1:8124/_uilts/にローカルでアクセスするとどうなりますか? –

答えて

0

@PartlyCloudyが示唆するように、最初に127.0.0.1:8124/_utilsにアクセスしてみてください。

第二に、あなたの人生を容易に(とミスを最小限に抑える)ためにこのようなcradleようlibにCouchDBのを使用してみてください

npm install cradle 

#node.jsに停止して、質問をすることを忘れないでください!結果を報告してください。

0

あなたは空の文字列としてHTTPリクエストセットプロキシを作成する要求を使用している場合...それは(ターゲットIPが現在のマシンのIPがある場合にのみ、あなたがそれを行うことができます)

var options = { 
     agent: ..., 
     url: ..., 
     method: ..., 
     proxy: '' 
    }; 
var req= request(options); 
. 
. 
. 
関連する問題