Овај VBA позив изгледа као да бира прокси сачуван у proxyServer:

http.setProxy 1, proxyServer, bypassList

За MSXML ServerXMLHTTP први аргумент бира режим проксија. Документоване вредности су 0 за подразумевану конфигурацију, 1 за директну везу и 2 за експлицитно наведени прокси. Прослеђивање адресе после 1 не претвара директни режим у режим ручног проксија.

Минимални пример ручног проксија је:

Dim http As Object
Set http = CreateObject("MSXML2.ServerXMLHTTP.6.0")
http.setProxy 2, "proxy.example:8080", "<local>"
http.Open "GET", "https://example.com/", False
http.send

Одредиште у примеру је резервисано место. За проверу јавног проксија замените га HTTP адресом са листе HTTP проксија. Трећи аргумент је листа заобилажења; овде <local> користи документовани изузетак за локално име. То није други прокси који треба испробати ако први не успе. Зато стављање IP адресе и порта другог проксија тамо изражава погрешну врсту поставке.

Користите именоване константе где их ваше VBA референце излажу, или дефинишите одговарајућу константу локално када користите касно повезивање, како би режим био видљив током прегледа.

Такође имајте на уму тип објекта. ServerXMLHTTP, XMLHTTP оријентисан на прегледач и WinHttpRequest различита су COM сучеља. Пример који ради за једно не доказује извор конфигурације другог. Након што исправан објекат одабере режим ручног проксија, истражите сваку преосталу грешку везе, провере идентитета или TLS-а на тој рути.

Повезани чланци