Ang kapalit ng HttpConfigurable ay nakakalat sa ilang API. Ang plugin na sumusuri sa mga setting ng HTTP proxy ay nangangailangan ng ibang operasyon kaysa sa plugin na nagpapadala ng kahilingan sa pamamagitan ng mga ito.

Kasalukuyang paggamitAPI ng migrasyon
Basahin ang napiling configuration ng proxyProxySettings.getInstance().getProxyConfiguration()
Kunin ang mga kilalang kredensyal o tanungin ang gumagamitProxyAuthentication
Kunin ang mga kredensyal para sa naka-configure na static na endpointgetStaticProxyCredentials, isang extension ng Kotlin na inilantad sa Java sa pamamagitan ng ProxyUtils
Magbukas ng URL gamit ang pagpili ng proxy ng platformHttpConnectionUtils.openConnection(location) o openHttpConnection(location)

Para sa API ng migrasyon na kinakatawan ng mga source ng IntelliJ Platform noong 2024, ang mga uri ng network na ito ay nasa com.intellij.util.net. Halimbawa, maaaring suriin ng Kotlin ang configuration at hanapin ang mga kilalang kredensyal ng static na proxy nang hindi nagtatanong:

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
    )
)

Ang katulong ay nangangailangan ng ProxyCredentialProvider; iniaangkop ng reference ng method ang serbisyo ng pagpapatunay sa interface na iyon. Hinahanap ang mga kredensyal ayon sa host at port ng naka-configure na proxy. Ang null na resulta ay maaaring mangahulugan na ang configuration ay hindi static, kaya hindi nito pinatutunayan na ang proxy na pinili sa pamamagitan ng PAC ay hindi nangangailangan ng pagpapatunay.

Kapag ang tunay na gawain ay gumawa ng kahilingang HTTP, gamitin ang katulong ng koneksyon ng platform sa halip na muling buuin ang routing mula sa mga field ng host at port. Sumasangguni ito sa tagapili ng proxy ng platform para sa destinasyong URL. Ang pag-convert ng static na configuration gamit ang asJavaProxy() ay hindi gumagalang sa listahan ng pagbubukod nito at hindi nagpapatupad ng pagpili ng PAC.

Kung kailangan ang interactive na pagpapatunay, ang ProxyAuthentication.getPromptedAuthentication(prompt, host, port) ay hiwalay at posibleng humaharang na operasyon. Panatilihin ang pagkakaibang iyon kapag nagmi-migrate ng code, at suriin ang pagkakaroon ng API laban sa pinakamababang sinusuportahang Platform SDK ng plugin.

Kaugnay na mga artikulo