Ukushintsha i-HttpConfigurable ku-plugin ye-IntelliJ
Funda ukulungiselelwa kwe-proxy, thola ubufakazi be-endpoint, bese uvula ukuxhumana okuhambisana ne-platform ngama-API e-proxy e-IntelliJ.
Okungena esikhundleni se-HttpConfigurable kusatshalaliswe kuma-API amaningi. I-plugin ehlola izilungiselelo ze-HTTP proxy idinga umsebenzi ohlukile kuneyo ethumela isicelo ngazo.
| Ukusetshenziswa kwamanje | API yokufuduka |
|---|---|
| Funda ukulungiselelwa kwe-proxy okukhethiwe | ProxySettings.getInstance().getProxyConfiguration() |
| Thola ubufakazi obaziwayo noma buza umsebenzisi | ProxyAuthentication |
| Thola ubufakazi be-endpoint emile elungiselwe | getStaticProxyCredentials, isandiso se-Kotlin esivezwa ku-Java nge-ProxyUtils |
| Vula i-URL ngokukhetha i-proxy ye-platform | HttpConnectionUtils.openConnection(location) noma openHttpConnection(location) |
Kuma-API okufuduka amelwe imithombo ye-IntelliJ Platform yango-2024, lezi zinhlobo zenethiwekhi ziku-com.intellij.util.net. Isibonelo, i-Kotlin ingahlola ukulungiselelwa futhi ifune ubufakazi be-proxy emile obaziwayo ngaphandle kokubuza:
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
)
)
Umsizi udinga i-ProxyCredentialProvider; isethenjwa sendlela sihlanganisa insizakalo yokuqinisekisa kuleyo interface. Ubufakazi bufanywa nge-host ne-port ye-proxy elungisiwe. Umphumela we-null ungase usho ukuthi ukulungiselelwa akukho emile, ngakho akufakazi ukuthi i-proxy ekhethwe nge-PAC ayidingi ukuqinisekisa.
Lapho umsebenzi wangempela uwukwenza isicelo se-HTTP, sebenzisa umsizi wokuxhumana we-platform esikhundleni sokwakha kabusha umzila kusukela ezinkambeni ze-host ne-port. Ubuza isikhethi se-proxy se-platform nge-URL yomkhombandlela. Ukuguqula ukulungiselelwa okumile nge-asJavaProxy() akuhloniphi uhlu lwalo lokungafakwa futhi akusebenzisi ukukhetha kwe-PAC.
Uma kudingeka ukuqinisekisa okusebenzisanayo, i-ProxyAuthentication.getPromptedAuthentication(prompt, host, port) umsebenzi ohlukile ongase uvimbe. Gcina lowo mehluko lapho ufudusa ikhodi, futhi hlola ukutholakala kwe-API ngokuqhathanisa ne-Platform SDK encane esekelwayo yi-plugin.