Конфигурисање Spring WebClient проксија уз Reactor Netty
Обезбедите Reactor Netty клијент конфигурисан са проксијем кроз WebClient конектор и узмите у обзир његово CONNECT-засновано понашање проксија.
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();
Користите овај WebClient за позив. За јавне сервисе на дозвољеној јавној прокси рути, листа HTTP проксија даје кандидате за host и port; потврдите CONNECT приступ стварном одредишту. Типови HttpClient/ProxyProvider припадају Reactor Netty, а не стандардном Java клијенту. Други инјектовани WebClient може задржати други конектор.
Документована Netty HTTP прокси путања Reactor Netty користи CONNECT без обзира на шему одредишта. Зато обичном HTTP циљу може требати дозвола за тунел до његовог port-а чак и када прокси тамо прихвата обичан прослеђени HTTP. Прочитајте стварни одговор проксија пре него што промените шему URL-а. За компатибилно Spring 6.2 распоређивање које захтева обично HTTP/1.1 прослеђивање, пример Jetty 12.0.35 конектора нуди ту алтернативу.
За рутирање JVM својствима изаберите документовану opt-in конфигурацију Reactor Netty. Својство присутно у JVM-у не конфигурише сваки конектор.
Држите одвојено подешавање/аутентификацију проксија, TLS одредишта и одговоре апликације. Конектор обезбеђује руту, а не акредитиве одредишта или резултат протокола.