2011-01-11 4 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 

내가이 프록시 문제가 될 수도 있습니다 같은데요. 우분투 10.10에서는 시스템 전체에 프록시 설정이 있지만 127.0.0.1을 무시하도록 지정합니다. 127.0.0.1:5984/_all_dbs에 말을하면 "Error Code : 502 Proxy Error."에 오류가 발생합니다.

+0

시스템 설정보다 우선 취할 것 정말 프록시 오류처럼 보입니다. http://127.0.0.1:8124/_uilts/에 로컬로 액세스하면 어떻게 되나요? –

답변

0

먼저 @PartlyCloudy에서 제안하는대로 127.0.0.1:8124/_utils에 액세스 해보십시오.

둘째,

npm install cradle 

것은 #node.js으로 중지하고 질문을하는 것을 잊지 마십시오 당신의 인생을 더 쉽게 만드는 등 cradle lib에는 CouchDB를 사용해보십시오 (실수를 최소화)! 발견 한 내용을 반드시보고하십시오.

0

당신이 빈 문자열로 HTTP 요청 세트 프록시를 만들기 위해 요청을 사용하는 경우 ... 그것은 (대상 IP는 현재 컴퓨터의 IP 인 경우에만 당신이 그것을 할 수 있습니다)

var options = { 
     agent: ..., 
     url: ..., 
     method: ..., 
     proxy: '' 
    }; 
var req= request(options); 
. 
. 
. 
관련 문제