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 දෝෂයක් විමර්ශනය කරන්න.