Zamjena za HttpConfigurable raspoređena je na nekoliko API-ja. Dodatak koji pregledava postavke HTTP proxyja treba drugu operaciju od dodatka koji šalje zahtjev kroz njih.

Dosadašnja uporabaAPI za migraciju
Čitanje odabrane konfiguracije proxyjaProxySettings.getInstance().getProxyConfiguration()
Dohvaćanje poznatih vjerodajnica ili pitanje korisnikaProxyAuthentication
Pribavljanje vjerodajnica za konfiguriranu statičku završnu točkugetStaticProxyCredentials, Kotlin proširenje dostupno Javi kroz ProxyUtils
Otvaranje URL-a pomoću odabira proxyja platformeHttpConnectionUtils.openConnection(location) ili openHttpConnection(location)

Za API za migraciju koji predstavljaju izvori IntelliJ Platforma iz 2024., ovi mrežni tipovi nalaze se u com.intellij.util.net. Na primjer, Kotlin može pregledati konfiguraciju i potražiti poznate vjerodajnice statičkog proxyja bez upita:

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

Pomoćnik zahtijeva ProxyCredentialProvider; referenca na metodu prilagođava servis za autentifikaciju tom sučelju. Vjerodajnice se traže prema hostu i portu konfiguriranog proxyja. null rezultat može značiti da konfiguracija nije statička, pa ne dokazuje da proxy odabran putem PAC-a ne treba autentifikaciju.

Kada je stvarni zadatak slanje HTTP zahtjeva, upotrijebite pomoćnik za vezu platforme umjesto ponovne izgradnje usmjeravanja iz polja hosta i porta. On se savjetuje s biračem proxyja platforme za odredišni URL. Pretvaranje statičke konfiguracije pomoću asJavaProxy() ne poštuje njezin popis izuzetaka i ne implementira PAC odabir.

Ako je potrebna interaktivna autentifikacija, ProxyAuthentication.getPromptedAuthentication(prompt, host, port) je zasebna operacija koja može blokirati. Zadržite tu razliku pri migraciji koda i provjerite dostupnost API-ja prema minimalnom podržanom Platform SDK-u dodatka.

Povezani članci