HttpClient httpClient = HttpClient.create()
    .proxy(proxy -> proxy.type(ProxyProvider.Proxy.HTTP)
        .host("203.0.113.10").port(8080));

WebClient client = WebClient.builder()
    .clientConnector(new ReactorClientHttpConnector(httpClient))
    .build();

Bruk denne WebClient-en for kallet. For offentlige tjenester på en tillatt offentlig proxy-rute gir HTTP-proxylisten kandidater for host og port; bekreft CONNECT-tilgang til den faktiske destinasjonen. Typene HttpClient/ProxyProvider tilhører Reactor Netty, ikke Javas standardklient. En annen injisert WebClient kan beholde en annen connector.

Reactor Nettys dokumenterte Netty HTTP-proxybane bruker CONNECT uavhengig av destinasjonens skjema. Et vanlig HTTP-mål kan derfor trenge tunnelstillatelse til porten sin selv når proxyen godtar vanlig videresendt HTTP der. Les den faktiske proxyresponsen før du endrer URL-ens skjema. For en kompatibel Spring 6.2-distribusjon som trenger vanlig HTTP/1.1-videresending, gir Jetty 12.0.35-connectoreksempelet det alternativet.

For JVM-egenskapsruting, velg Reactor Nettys dokumenterte opt-in-konfigurasjon. En egenskap som finnes i JVM-en konfigurerer ikke hver connector.

Hold proxyoppsett/autentisering, destinasjonens TLS og applikasjonsresponser atskilt. Connectoren leverer ruten, ikke destinasjonens påloggingsdata eller protokollresultat.

Relaterte artikler