Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.04.2015, 20:39
Новичок на форуме
Отправить личное сообщение для newx Посмотреть профиль Найти все сообщения от newx
 
Регистрация: 25.09.2012
Сообщений: 3

https запрос через прокси
Собственно сабж в заголовке.
Как можно в nodejs послать https-запрос, используя прокси-сервер?
Если можно - с примерами.
В гугле ни чего связного не нашел на эту тему, да и сильно слаб я в английском, так что буду очень благодарен вам за любую информацию на этот счет.
Заранее огромное спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 13.04.2015, 21:49
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от theKingOfJava
 
Регистрация: 31.03.2015
Сообщений: 113

Даю пример с 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);

Последний раз редактировалось theKingOfJava, 13.04.2015 в 21:53.
Ответить с цитированием
  #3 (permalink)  
Старый 13.04.2015, 22:10
Новичок на форуме
Отправить личное сообщение для newx Посмотреть профиль Найти все сообщения от newx
 
Регистрация: 25.09.2012
Сообщений: 3

В том то и дело, что для http проблем нет совершенно. Меня интересует именно https - там не все так прозрачно, поскольку через прокси требуется передавать защищенные(ssl-протокол) данные.
Ответить с цитированием
  #4 (permalink)  
Старый 13.04.2015, 22:13
Новичок на форуме
Отправить личное сообщение для newx Посмотреть профиль Найти все сообщения от newx
 
Регистрация: 25.09.2012
Сообщений: 3

Кажется я нашел ответ на свой вопрос.
Всем огромное спасибо.
Кому интересно - вот замечательная статья, в которой все по полочкам:
http://blog.vanamco.com/proxy-requests-in-node-js/
Ответить с цитированием
  #5 (permalink)  
Старый 14.04.2015, 11:57
Новичок на форуме
Отправить личное сообщение для agsh Посмотреть профиль Найти все сообщения от agsh
 
Регистрация: 05.02.2015
Сообщений: 7

https://github.com/request/request#proxies
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Значение переменной через запятую DDSSDD Серверные языки и технологии 41 16.10.2014 15:01
Как оборвать на сервере и клиенте запрос если у клиента пропала сеть. beard AJAX и COMET 3 21.12.2012 16:35
Эмулировать список через селект Nanto Элементы интерфейса 2 06.03.2012 11:54
Проблема с обработкой селектов html кода, пришедшего через ajax запрос Rage jQuery 6 26.01.2009 14:15
XMLHTTPRequest передача имя через POST dds AJAX и COMET 0 14.08.2008 14:44