Zamenjava HttpConfigurable v vtičniku IntelliJ
Preberite konfiguracijo posrednika, pridobite poverilnice končne točke in odpirajte povezave, prilagojene platformi, s proxy API-ji IntelliJ.
Nadomestek za HttpConfigurable je razdeljen med več API-jev. Vtičnik, ki pregleduje nastavitve HTTP-posrednika, potrebuje drugačno operacijo kot vtičnik, ki prek njih pošilja zahtevo.
| Dosedanja uporaba | API za migracijo |
|---|---|
| Branje izbrane konfiguracije posrednika | ProxySettings.getInstance().getProxyConfiguration() |
| Pridobivanje znanih poverilnic ali vprašanje uporabnika | ProxyAuthentication |
| Pridobivanje poverilnic za nastavljeno statično končno točko | getStaticProxyCredentials, razširitev Kotlin, dostopna Javi prek ProxyUtils |
| Odpiranje URL z izbiro posrednika platforme | HttpConnectionUtils.openConnection(location) ali openHttpConnection(location) |
Za API za migracijo, ki ga predstavljajo viri IntelliJ Platform iz leta 2024, so ti omrežni tipi v com.intellij.util.net. Kotlin lahko na primer pregleda konfiguracijo in poišče znane poverilnice statičnega posrednika brez poziva:
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 zahteva ProxyCredentialProvider; sklic na metodo prilagodi storitev preverjanja pristnosti temu vmesniku. Poverilnice se iščejo po gostitelju in vratih nastavljenega posrednika. Rezultat null lahko pomeni, da konfiguracija ni statična, zato ne dokazuje, da posrednik, izbran prek PAC, ne potrebuje preverjanja pristnosti.
Ko je dejanska naloga izdelati zahtevo HTTP, uporabite pomočnika za povezavo platforme, namesto da bi usmerjanje znova zgradili iz polj gostitelja in vrat. Ta se posvetuje z izbirnikom posrednika platforme za ciljni URL. Pretvarjanje statične konfiguracije z asJavaProxy() ne upošteva njenega seznama izjem in ne izvaja izbire PAC.
Če je potrebno interaktivno preverjanje pristnosti, je ProxyAuthentication.getPromptedAuthentication(prompt, host, port) ločena operacija, ki lahko blokira. To razliko ohranite pri migraciji kode in preverite razpoložljivost API-ja glede na najnižjo podprto Platform SDK vtičnika.