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 பிழையை ஆராயுங்கள்.