https запрос через прокси
Собственно сабж в заголовке.
Как можно в nodejs послать https-запрос, используя прокси-сервер? Если можно - с примерами. В гугле ни чего связного не нашел на эту тему, да и сильно слаб я в английском, так что буду очень благодарен вам за любую информацию на этот счет. Заранее огромное спасибо. |
Даю пример с http, с https должно быть аналогично, но не проверял, у меня сертификаты не настроены
http.createServer( function( request, response )
{
var url_parts = url.parse( request.url );
var options = {
hostname : request.headers.host,
port : 80,
path : url_parts.path,
method : request.method,
headers : request.headers
};
var request_data;
var proxy_client = http.request( options, function( res )
{
res.on( 'data', function ( chunk )
{
response.write( chunk, 'binary' );
} );
res.on( 'end', function()
{
response.end();
} );
res.on( 'error', function ( e )
{
console.log( 'Error with client ', e );
} );
response.writeHead( res.statusCode, res.headers );
} );
request.on( 'data', function ( chunk )
{
request_data = request_data + chunk;
proxy_client.write( chunk, 'binary' );
} );
request.on( 'end', function()
{
proxy_client.end();
} );
request.on( 'error', function ( e )
{
console.log( 'Problem with request ', e );
} );
} ).listen(yourport);
|
В том то и дело, что для http проблем нет совершенно. Меня интересует именно https - там не все так прозрачно, поскольку через прокси требуется передавать защищенные(ssl-протокол) данные.
|
Кажется я нашел ответ на свой вопрос.
Всем огромное спасибо. Кому интересно - вот замечательная статья, в которой все по полочкам: http://blog.vanamco.com/proxy-requests-in-node-js/ |
|
| Часовой пояс GMT +3, время: 05:27. |