Qt HttpProxy နှင့် HttpCachingProxy- CONNECT စွမ်းရည်များ
CONNECT ကို ပံ့ပိုးသော Qt ၏ HttpProxy ကို တောင်းဆိုမှုသီးသန့် HttpCachingProxy အမျိုးအစားမှ ခွဲခြားပါ။
Qt သည် လိုဏ်ခေါင်းဖောက်နိုင်သော HTTP proxy ကို ၎င်း၏ cache သီးသန့် HTTP proxy အမျိုးအစားနှင့် ခွဲခြားထားသည်။ အမည်နှစ်ခုစလုံးတွင် HTTP ပါသော်လည်း ၎င်းတို့၏ ချိတ်ဆက်မှုစွမ်းရည်များ ကွဲပြားသည်။
| Qt အမျိုးအစား | ချိတ်ဆက်မှု အခန်း |
|---|---|
| HttpProxy | အပြင်ထွက် TCP ချိတ်ဆက်မှုများအတွက် HTTP CONNECT ပံ့ပိုးမှု |
| HttpCachingProxy | ကိုက်ညီသော တောင်းဆိုမှုအခြေခံ client တွင် သာမန် HTTP တောင်းဆိုမှုများ |
| Socks5Proxy | မှတ်တမ်းတင်ထားသော သယ်ယူပို့ဆောင်မှုစွမ်းရည်များနှင့် SOCKS5 ညှိနှိုင်းမှု |
သာမန် HTTP တောင်းဆိုမှု ပြုလုပ်သော QNetworkAccessManager သည် တောင်းဆိုမှုကို ဦးတည်သော အမျိုးအစားကို အသုံးပြုနိုင်သည်။ byte လိုဏ်ခေါင်း လိုအပ်သော QTcpSocket အတွက် TunnelingCapability ရှိသည့် proxy လိုအပ်သည်။ ယေဘုယျ TCP socket များ အသုံးပြုရမည့်အခါ ထိုစွမ်းရည်မပါဘဲ application မူလတန်ဖိုး ထည့်သွင်းခြင်းကို Qt က အထူးသတိပေးသည်။
အဆုံးမှတ်ကို သတ်မှတ်ခြင်းမပြုမီ protocol အမျိုးအစားကို ရွေးပါ။ proxy အတည်ပြုချက်မပါဘဲ ခွင့်ပြုထားသော အများသူငှာ HTTP တောင်းဆိုမှုအတွက် HTTP proxy စာရင်း က လိပ်စာများ ပေးသည်။ သို့သော် Qt အမျိုးအစားသည် ထိုတောင်းဆိုမှု လိုအပ်သော စွမ်းရည်ကို ဆက်လက်ပေးရမည်။ CONNECT ဝန်ဆောင်မှု အသုံးပြုသော port ကို HttpCachingProxy အား ပေးခြင်းသည် ထို Qt ရွေးချယ်မှုတွင် လိုနေသော စွမ်းရည်ကို ထပ်မံဖြည့်မပေးပါ။
cache သီးသန့် ဟူသော အမှတ်အသားသည်လည်း တုံ့ပြန်မှုတိုင်းကို အဝေးမှ server က သိမ်းဆည်း သို့မဟုတ် ပြန်လည်အသုံးပြုမည်ဟု အာမမခံပါ။ ၎င်းသည် client interface က ပံ့ပိုးသော proxy အသုံးပြုပုံ ပုံစံကို ဖော်ပြသည်။ cache ပြန်လည်အသုံးပြုမှုကို HTTP တုံ့ပြန်မှု မူဝါဒက ဆက်လက်ထိန်းချုပ်သည်။