ServerXMLHTTP setProxy: ਮੋਡ 1 ਸਿੱਧਾ ਕਨੈਕਸ਼ਨ ਚੁਣਦਾ ਹੈ
ServerXMLHTTP ਦਾ ਸਹੀ ਪ੍ਰੌਕਸੀ-ਮੋਡ ਸਥਿਰਾਂਕ ਵਰਤੋ ਅਤੇ ਬਾਈਪਾਸ ਸੂਚੀ ਨੂੰ ਬਦਲਵੇਂ ਪ੍ਰੌਕਸੀ ਐਂਡਪੌਇੰਟ ਤੋਂ ਵੱਖ ਰੱਖੋ।
ਇਹ 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 ਗਲਤੀ ਜਾਂਚੋ।