Reactor Netty көмегімен Spring WebClient проксиін конфигурациялау
WebClient коннекторы арқылы проксимен конфигурацияланған Reactor Netty клиентін ұсыныңыз және оның 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 прокси тізімі хост пен порт кандидаттарын береді; нақты мақсатқа CONNECT қатынасын растаңыз. HttpClient/ProxyProvider типтері Reactor Netty-ге тиесілі, Java-ның стандартты клиентіне емес. Басқа енгізілген WebClient басқа коннекторды сақтай алады.
Reactor Netty-нің құжатталған Netty HTTP прокси жолы мақсат схемасына қарамастан CONNECT қолданады. Сондықтан қарапайым HTTP мақсаты, прокси онда қарапайым жіберілген HTTP-ны қабылдаса да, өз портына туннель рұқсатын қажет етуі мүмкін. URL схемасын өзгерту алдында проксидің нақты жауабын оқыңыз. Қарапайым HTTP/1.1 жіберу қажет үйлесімді Spring 6.2 орналастыруы үшін Jetty 12.0.35 коннектор мысалы сол баламаны ұсынады.
JVM қасиеттерімен маршруттау үшін Reactor Netty-нің құжатталған opt-in конфигурациясын таңдаңыз. JVM-де бар қасиет әр коннекторды конфигурацияламайды.
Прокси баптауын/аутентификацияны, мақсаттың TLS-ін және қолданба жауаптарын бөлек ұстаңыз. Коннектор маршрутты береді, мақсаттың тіркелгі деректерін немесе протокол нәтижесін емес.