Замена HttpConfigurable размеркавана па некалькіх API. Плагін, які аглядае налады HTTP-проксі, патрабуе іншай аперацыі, чым плагін, які адпраўляе праз іх запыт.

Існуючае выкарыстаннеAPI міграцыі
Чытанне выбранай канфігурацыі проксіProxySettings.getInstance().getProxyConfiguration()
Атрыманне вядомых уліковых даных або запыт у карыстальнікаProxyAuthentication
Атрыманне ўліковых даных для наладжанага статычнага канчатковага пунктаgetStaticProxyCredentials, пашырэнне Kotlin, даступнае для Java праз ProxyUtils
Адкрыццё URL з выкарыстаннем выбару проксі платформыHttpConnectionUtils.openConnection(location) або openHttpConnection(location)

Для API міграцыі, прадстаўленага зыходнікамі IntelliJ Platform 2024 года, гэтыя сеткавыя тыпы знаходзяцца ў 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) — асобная, патэнцыйна блакуючая аперацыя. Захоўвайце гэтае адрозненне пры міграцыі кода і правярайце даступнасць API адносна мінімальнага падтрымліванага Platform SDK плагіна.

Падобныя артыкулы