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

Gebruik hierdie WebClient vir die oproep. Vir openbare dienste op 'n toegelate publieke-proxy-roete lewer die HTTP-proxyllys gasheer- en poortkandidate; bevestig CONNECT-toegang tot die werklike bestemming. Die HttpClient/ProxyProvider-tipes is Reactor Netty s'n, nie Java se standaardkliënt nie. 'n Ander ingevoegde WebClient kan 'n ander connector behou.

Reactor Netty se gedokumenteerde Netty HTTP-proxypad gebruik CONNECT ongeag die bestemming se skema. 'n Gewone HTTP-teiken kan dus tonneltoestemming na sy poort nodig hê selfs wanneer die proxy gewone deurgestuurde HTTP daar aanvaar. Lees die werklike proxy-reaksie voordat jy die URL se skema verander. Vir 'n versoenbare Spring 6.2-ontplooiing wat gewone HTTP/1.1-deursturing benodig, bied die Jetty 12.0.35-connectorvoorbeeld daardie alternatief.

Vir JVM-eienskap-roetering, kies Reactor Netty se gedokumenteerde opt-in-konfigurasie. 'n Eienskap wat in die JVM teenwoordig is, konfigureer nie elke connector nie.

Hou proxy-opstelling/verifikasie, bestemming-TLS en toepassingsresponse apart. Die connector lewer die roete, nie die bestemming se geloofsbriewe of protokolresultaat nie.

Verwante artikels