IntelliJ ပလပ်ဂင်တွင် HttpConfigurable ကို အစားထိုးခြင်း
ပရောက်စီ ဖွဲ့စည်းမှုကို ဖတ်ပါ၊ အဆုံးမှတ် အထောက်အထားများ ရယူပြီး IntelliJ ပရောက်စီ API များဖြင့် ပလက်ဖောင်းနှင့် ကိုက်ညီသော ချိတ်ဆက်မှုများကို ဖွင့်ပါ။
HttpConfigurable အတွက် အစားထိုးမှုသည် API များစွာတွင် ဖြန့်ကျက်ထားသည်။ HTTP ပရောက်စီ ဆက်တင်များကို စစ်ဆေးသော ပလပ်ဂင်သည် ၎င်းတို့မှတစ်ဆင့် တောင်းဆိုချက် ပို့သော ပလပ်ဂင်နှင့် မတူညီသော လုပ်ဆောင်ချက် လိုအပ်သည်။
| လက်ရှိ အသုံးပြုမှု | ရွှေ့ပြောင်းရေး API |
|---|---|
| ရွေးချယ်ထားသော ပရောက်စီ ဖွဲ့စည်းမှုကို ဖတ်ပါ | ProxySettings.getInstance().getProxyConfiguration() |
| သိရှိပြီး အထောက်အထားများ ရယူပါ သို့မဟုတ် အသုံးပြုသူကို မေးပါ | ProxyAuthentication |
| ဖွဲ့စည်းထားသော တည်ငြိမ် အဆုံးမှတ်အတွက် အထောက်အထားများ ရယူပါ | getStaticProxyCredentials၊ ProxyUtils မှတစ်ဆင့် Java သို့ ဖော်ထုတ်ထားသော Kotlin တိုးချဲ့မှု |
| ပလက်ဖောင်း၏ ပရောက်စီ ရွေးချယ်မှုဖြင့် URL ဖွင့်ပါ | HttpConnectionUtils.openConnection(location) သို့မဟုတ် openHttpConnection(location) |
2024 IntelliJ Platform ရင်းမြစ်များ ကိုယ်စားပြုသော ရွှေ့ပြောင်းရေး API အတွက် ဤကွန်ရက် အမျိုးအစားများသည် com.intellij.util.net တွင် ရှိသည်။ ဥပမာ၊ Kotlin သည် ဖွဲ့စည်းမှုကို စစ်ဆေးပြီး သိရှိပြီး တည်ငြိမ်ပရောက်စီ အထောက်အထားများကို မမေးဘဲ ရှာဖွေနိုင်သည်။
import com.intellij.util.net.ProxyAuthentication
import com.intellij.util.net.ProxyCredentialProvider
import com.intellij.util.net.ProxySettings
import com.intellij.util.net.getStaticProxyCredentials
val settings = ProxySettings.getInstance()
val configuration = settings.getProxyConfiguration()
val credentials = settings.getStaticProxyCredentials(
ProxyCredentialProvider(
ProxyAuthentication.getInstance()::getKnownAuthentication
)
)
အကူအညီကို ProxyCredentialProvider လိုအပ်သည်။ နည်းလမ်း ရည်ညွှန်းချက်သည် အတည်ပြုစစ်ဆေးရေး ဝန်ဆောင်မှုကို ထို အင်တာဖေ့စ်နှင့် ကိုက်ညီအောင် ပြင်ဆင်သည်။ အထောက်အထားများကို ဖွဲ့စည်းထားသော ပရောက်စီ၏ ဟိုစ့်နှင့် ပို့တ်ဖြင့် ရှာဖွေသည်။ null ရလဒ်သည် ဖွဲ့စည်းမှု တည်ငြိမ်မဟုတ်ကြောင်း ဆိုနိုင်သည်၊ ထို့ကြောင့် PAC ဖြင့် ရွေးချယ်ထားသော ပရောက်စီသည် အတည်ပြုစစ်ဆေးမှု မလိုအပ်ကြောင်း သက်သေမပြပါ။
အမှန်တကယ် အလုပ်မှာ HTTP တောင်းဆိုချက် ပြုလုပ်ခြင်း ဖြစ်ပါက ဟိုစ့်နှင့် ပို့တ် အကွက်များမှ လမ်းကြောင်းကို ပြန်လည်တည်ဆောက်မည့်အစား ပလက်ဖောင်း ချိတ်ဆက်မှု အကူအညီကို အသုံးပြုပါ။ ၎င်းသည် ဦးတည်ရာ URL အတွက် ပလက်ဖောင်း၏ ပရောက်စီ ရွေးချယ်သူကို မေးမြန်းသည်။ တည်ငြိမ် ဖွဲ့စည်းမှုကို asJavaProxy() ဖြင့် ပြောင်းလဲခြင်းသည် ၎င်း၏ ခြွင်းချက် စာရင်းကို မလိုက်နာပြီး PAC ရွေးချယ်မှုကို အကောင်အထည် မဖော်ပါ။
အပြန်အလှန် အတည်ပြုစစ်ဆေးမှု လိုအပ်ပါက ProxyAuthentication.getPromptedAuthentication(prompt, host, port) သည် သီးခြား၊ ပိတ်ဆို့နိုင်သော လုပ်ဆောင်ချက် ဖြစ်သည်။ ကုဒ်ကို ရွှေ့ပြောင်းစဉ် ထို ကွာခြားချက်ကို ထိန်းသိမ်းပြီး ပလပ်ဂင် ပံ့ပိုးသော အနည်းဆုံး Platform SDK နှင့် API ရရှိနိုင်မှုကို စစ်ဆေးပါ။