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 အမှားကို စစ်ဆေးပါ။