requests-oauthlib: fetch_token မတိုင်မီ OAuth2Session ၏ proxy ကို သတ်မှတ်ပါ
တိုကင်ရယူခြင်းနှင့် ကာကွယ်ထားသော အရင်းအမြစ်များအတွက် တူညီသော proxy ကို သိသော session ကို အသုံးပြုပြီး လက်ရှိ OAuth စီးဆင်းမှုကို မပြောင်းလဲဘဲ ထားပါ။
from requests_oauthlib import OAuth2Session
session = OAuth2Session(client_id=client_id, redirect_uri=redirect_uri)
session.proxies.update({
'http': 'http://proxy.example:8080',
'https': 'http://proxy.example:8080',
})OAuth2Session သည် Requests ၏ Session ကို တိုးချဲ့သည်။ application ၏ လက်ရှိ client registration၊ redirect URI၊ state နှင့် scopes ဖြင့် ၎င်းကို တည်ဆောက်ပြီး တိုကင်လဲလှယ်ခြင်းမတိုင်မီ ၎င်း၏ လမ်းကြောင်းကို သတ်မှတ်ပါ။ အများသူငှာ HTTP လမ်းကြောင်းအတွက် HTTP proxy စာရင်းမှ ကိုယ်စားလှယ်တစ်ဦးသည် ဤ session ၏ proxy မြေပုံတွင် လိပ်စာကို ပေးသည်။
ဤ session တွင် fetch_token နှင့် ကာကွယ်ထားသော အရင်းအမြစ် လုပ်ဆောင်ချက်များကို ခေါ်ပါ။ proxies အငြင်းအခုံသည် fetch_token သို့သာ ပေးသောအခါ ထိုလဲလှယ်မှုအတွက်သာ သက်ရောက်သည်။ ၎င်းသည် နောက်ပိုင်းခေါ်ဆိုမှုများအတွက် အမြဲတမ်းလမ်းကြောင်းကို မထည့်သွင်းပါ။
ဘရောက်ဇာရှိ ခွင့်ပြုချက်စာမျက်နှာ လည်ပတ်မှုသည် ဘရောက်ဇာ၏ လမ်းကြောင်းကို အသုံးပြုသည်။ Python သည် တိုကင်တောင်းခံမှုကို သီးခြား လုပ်ဆောင်သည်၊ ထို့ကြောင့် ဘရောက်ဇာတွင် အောင်မြင်မှုသည် ဤ session ကို မသတ်မှတ်ပါ။
Requests ၏ ပတ်ဝန်းကျင်နှင့် ပေါင်းစပ်မှုသည် session ၏ proxy ရွေးချယ်မှုကို သက်ရောက်နိုင်သည်။ application ပိုင်ဆိုင်သော တင်းကျပ်သော လမ်းကြောင်းအတွက် trust_env ကို ပြန်လည်စစ်ဆေးပါ။ ၎င်းကို ပိတ်ခြင်းသည် လိုအပ်သော CA သို့မဟုတ် စစ်မှန်ကြောင်းအထောက်အထား ဆက်တင်များကို ရှင်းလင်းစွာ ပေးရန်လည်း လိုအပ်သည်။
တိုကင် endpoint မှ ပြန်ပေးသော OAuth အမှားသည် အလုပ်လုပ်နေသော proxy မှတစ်ဆင့် ရောက်လာနိုင်သည်။ ထိုတုံ့ပြန်မှုကို proxy စစ်မှန်ကြောင်းအထောက်အထားနှင့် သီးခြားသိမ်းထားပါ။ ၎င်း၏ အထောက်အထားများသည် client secret နှင့် access token တို့နှင့် ကွဲပြားသည်။