Kishughulikia wakala wa HTTP cha Reactor Netty huunda handaki la CONNECT hata kwa lengo la kawaida la HTTP. Ikiwa wakala unaokusudiwa unakubali usambazaji wa kawaida wa HTTP/1.1, Spring WebClient inaweza kutumia kiunganishi kingine kinachotumika.

Kwa Spring 6.2 pamoja na API ya mteja ya Jetty 12.0.35 na muunganisho unaolingana wa 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 na JettyClientHttpConnector ni madaraja ya Spring. Dhibiti uanzishaji na uzimaji wa mteja wa Jetty uliotolewa kupitia mzunguko wa kawaida wa maisha wa programu.

Wakala wa HTTP/1.1 wa Jetty anaweza kusambaza ombi la kawaida la HTTP/1.1 bila handaki wakati itifaki za lengo na wakala wa mteja zinalingana. Sera yake ya requiresTunnel hutumia CONNECT kwa malengo salama na kwa njia za itifaki zisizolingana.

Hii si njia ya kuondoa CONNECT kutoka handaki la kawaida la HTTPS. Weka scheme ya lengo sawa.

Tumia addProxy katika API ya Jetty iliyotajwa. getProxies hurudisha orodha isiyoweza kubadilishwa, kwa hivyo mapishi ya zamani getProxies().add(...) si kiolesura chake cha sasa cha kubadilisha.

Kwa malengo ya umma ya HTTP kwenye njia ya wakala ya umma inayoruhusiwa, orodha ya wakala wa HTTP hutoa watahiniwa wa mwenyeji na bandari ya wakala wa Jetty. Soma jibu halisi la wakala unapolinganisha viunganishi. Uthibitishaji, sera ya lengo na lengo lisilopatikana hubaki tofauti na uchaguzi wa HTTP inayosambazwa au CONNECT.

Makala zinazohusiana