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 tilbyr HTTP-proxylisten kandidater for host og port; bekreft CONNECT-tilgang til den faktiske destinasjonen. Typene HttpClient/ProxyProvider er Reactor Nettys, ikke Javas standardklient. En annen injisert WebClient kan beholde en annen connector.

Den dokumenterte Netty HTTP-proxyveien i Reactor Netty bruker CONNECT uansett destinasjonens skjema. Et vanlig HTTP-mål kan derfor kreve tunnelstillatelse til porten sin selv når proxyen godtar vanlig videresendt HTTP der. Les den faktiske proxyresponsen før du endrer skjemaet i URL-en. For en kompatibel Spring 6.2-utrulling som trenger vanlig HTTP/1.1-videresending, gir Jetty 12.0.35-connectoreksempelet det alternativet.

For ruting med JVM-egenskaper, velg den dokumenterte opt-in-konfigurasjonen til Reactor Netty. En egenskap som finnes i JVM-en konfigurerer ikke hver connector.

Hold proxyoppsett/autentisering, destinasjonens TLS og applikasjonssvar atskilt. Connectoren leverer ruten, ikke destinasjonens legitimasjon eller protokollresultatet.

Relaterte artikler