Что нового

Работа с прокси через WinHttp

antiwinforever

Новичок
Сообщения
25
Репутация
0
Здравствуйте!
Подключаюсь к сайту через:
Код:
$oHttp = ObjCreate ("WinHttp.WinHttpRequest.5.1")

Нужно реализовать поддержку любых прокси.
Для проверки скрипта брал прокси отсюда: proxyprivat.com/freeproxies
Но скрипт почему то работает только с прокси, у которых указано: SSL прокси.
С остальными: (SOCKS5 прокси, HTTP(S) прокси), почему то не работает.
Скрипт вылетает с ошибкой:
Код:
The requested action with this object has failed.:
$oHttp.Send()
$oHttp^ ERROR
+ необходимо включить поддержку приватных прокси с паролем и логином.
Это все я разобрался. Если без пароля, то так:
Код:
$oHTTP = ObjCreate('WinHttp.WinHttpRequest.5.1')
$oHTTP.SetProxy(2, "прокси:порт")
$oHTTP.Open('GET', 'https://www.test.com/', False)

А с паролем так:
Код:
$oHTTP = ObjCreate('WinHttp.WinHttpRequest.5.1')
$oHTTP.SetProxy(2, "прокси:порт")
$oHTTP.Open('GET', 'https://www.test.com/', False)
$oHTTP.SetCredentials("Логин", "Пароль", 0)


Но непонятно, может в Autoit есть какие то ограничения по типу прокси серверов? И как их обойти?
 
Автор
A

antiwinforever

Новичок
Сообщения
25
Репутация
0
может хотя бы есть возможность отловить ошибку? что бы программа не вылетала при неподходящем прокси, а просила у пользователя другой.
 

mef-t

Осваивающий
Сообщения
306
Репутация
30
antiwinforever сказал(а):
Сандлер сказал(а):
Не заморачивайтесь с WinHttp.
Работаю с SSL/HTTPS. Есть альтернативы? Кроме сторонних UDF.
WinHttp.au3 - сторонняя UDF, поддерживает и Http и Https (разные функции).
Опять таки, приведенный Вами вариант тоже должен работать.
 
Автор
A

antiwinforever

Новичок
Сообщения
25
Репутация
0
mef-t сказал(а):
antiwinforever сказал(а):
Сандлер сказал(а):
Не заморачивайтесь с WinHttp.
Работаю с SSL/HTTPS. Есть альтернативы? Кроме сторонних UDF.
WinHttp.au3 - сторонняя UDF, поддерживает и Http и Https (разные функции).
Опять таки, приведенный Вами вариант тоже должен работать.
Причем здесь сторонняя UDF WinHttp.au3? Под WinHttp я имел ввиду
Код:
ObjCreate('WinHttp.WinHttpRequest.5.1')

Я же не с головы беру, что не работает. В шапке темы все написано.
 

mef-t

Осваивающий
Сообщения
306
Репутация
30
В теме написано "С остальными: (SOCKS5 прокси, HTTP(S) прокси), почему то не работает."
Я уверяю, что данный подход работает с HTTP(S) прокси, так как только через этот прокси я могу попасть в интернет с работы.
Код Вы привели, осталось привести прокси, с которым не работает, т.к. без него банально ваше слово против моего. При этом у меня есть рабочий пример прокси, а Вы привели в пример лишь значение "прокси:порт".
Если уж Вы берете публичные прокси, думаю, Вы можете указать хотя бы 1 из них.
 
Верх