Я думаю, что некоторые вещи здесь нуждаются в прояснении.
ProgID "Microsoft.XMLHTTP" указывает на тот же класс, что и "MSXML2.XMLHTTP". Этот класс использует стек протоколов WinINET HTTP, который использует Internet Explorer, и поэтому будет использовать любую конфигурацию прокси-сервера, найденную в настройках Интернета на ПК.
Следовательно, для "Microsoft.XMLHTTP" команда proxycfg бесполезна.
Альтернативой XMLHTTP является «MSXML2.ServerXMLHTTP». Этот класс использует стек протоколов WinHTTP HTTP, который разработан, чтобы быть легким и дружественным к серверу. Безопасно использовать несколько экземпляров в нескольких потоках в одном процессе, где WinINET не работает. По этой причине в коде ASP на стороне сервера следует использовать ServerXMLHTTP.
WinHTTP не использует настройки Интернета, которые использует WinINET, поэтому для настройки прокси-сервера, который будет использовать ServerXMLHTTP, вам необходимо использовать команду proxycfg. Действительно полезная команда: -
proxycfg -u
Который копирует текущие настройки прокси-сервера WinINET в те, которые используются WinHTTP, если вы используете такие инструменты, как fiddler, это полезно для начала мониторинга трафика, проходящего через WinHTTP, после запуска fiddler. (Обратите внимание, что вы должны нажать proxycfg -d
, чтобы удалить настройки прокси-сервера).
ServerXMLHTTP также имеет метод setProxy
, который позволяет динамически настраивать фактические параметры прокси-сервера в виде кода.
person
AnthonyWJones
schedule
25.06.2009