Trajtuesi i proxy HTTP i Reactor Netty vendos një tunel CONNECT edhe për një destinacion të thjeshtë HTTP. Nëse proxy-ja e synuar pranon përcjellje të zakonshme HTTP/1.1, Spring WebClient mund të përdorë një lidhës tjetër të mbështetur.

Për Spring 6.2 me API-n e klientit të Jetty 12.0.35 dhe integrimin e përputhshëm Jetty Reactive Streams:

var jetty = new org.eclipse.jetty.client.HttpClient(
    new org.eclipse.jetty.client.transport.HttpClientTransportOverHTTP());
jetty.getProxyConfiguration().addProxy(
    new org.eclipse.jetty.client.HttpProxy("proxy.example", 8080));

var client = WebClient.builder()
    .clientConnector(new JettyClientHttpConnector(jetty))
    .build();

WebClient dhe JettyClientHttpConnector janë klasa të Spring. Menaxhoni nisjen dhe ndalimin e klientit Jetty të ofruar përmes ciklit normal të jetës së aplikacionit.

Proxy-ja HTTP/1.1 e Jetty mund të përcjellë një kërkesë të zakonshme HTTP/1.1 pa tunel kur protokollet e destinacionit dhe të proxy-t të klientit përputhen. Politika e saj requiresTunnel përdor CONNECT për destinacione të sigurta dhe për rrugë protokolli të papërputhshme.

Kjo nuk është mënyrë për të hequr CONNECT nga një tunel i zakonshëm HTTPS. Mbani skemën e destinacionit të saktë.

Përdorni addProxy në API-n e deklaruar të Jetty. getProxies kthen një listë të pandryshueshme, prandaj receta e vjetër getProxies().add(...) nuk është ndërfaqja aktuale e modifikimit.

Për destinacione publike HTTP në një rrugë proxy publike të lejuar, lista e proxy-ve HTTP ofron kandidatë për hostin dhe portin e proxy-s Jetty. Lexoni përgjigjen aktuale të proxy-t kur krahasoni lidhësit. Vërtetimi, politika e destinacionit dhe një destinacion i padisponueshëm mbeten të ndara nga zgjedhja mes HTTP të përcjellë dhe CONNECT.

Artikuj të ngjashëm