Behein RestTemplate-proxybewizen mei HttpClient 5
Behein Apache HttpClient 5-bewizen ta de proxyhost en -poart foardat jo it transport oan in Spring 6 RestTemplate jouwe.
In proxy-oanmelding heart by de bewizenleveransier fan it transport. Mei Spring 6 en Apache HttpClient 5 beheine jo dat akkount ta de tuskenpersoan:
var proxy = new org.apache.hc.core5.http.HttpHost(
"http", "proxy.example", 8080);
var credentials = new org.apache.hc.client5.http.impl.auth
.BasicCredentialsProvider();
credentials.setCredentials(
new org.apache.hc.client5.http.auth.AuthScope(proxy),
new org.apache.hc.client5.http.auth.UsernamePasswordCredentials(
proxyUser, proxyPassword.toCharArray()));
var http = org.apache.hc.client5.http.impl.classic.HttpClients.custom()
.setProxy(proxy)
.setDefaultCredentialsProvider(credentials)
.build();
var factory = new org.springframework.http.client
.HttpComponentsClientHttpRequestFactory(http);
var rest = new org.springframework.web.client.RestTemplate(factory);De applikaasje leveret de wearden proxyUser en proxyPassword en besit de libbenssyklus fan de HTTP-klant. Brûk rest opnij foar de wurklast ynstee fan op it oanropplak noch in standertsjabloan te bouwen.
AuthScope beheint wêr't dizze bewizen jildich binne. It foarbyld leveret gewoane brûkersnamme/wachtwurd-bewizen; de namme BasicCredentialsProvider twingt net elk útdaging om it HTTP Basic-skema te brûken.
Mei in HTTPS-bestimming kin it transport in proxy-útdaging by CONNECT beäntwurdzje, foardat it fersifere HTTP-fersyk fan de applikaasje bestiet. In algemiene bestimming-ynterceptor dy't Proxy-Authorization tafoeget is net lykweardich oan dy ûnderhanneling.
Konfigurearje elk bestimmingakkount apart. As de proxy it fersyk noch altyd wegert, behâld dan syn oankundige autentikaasjeskema en de effektive host en poart. Bewizen beheind ta in oar einpunt sille net passe allinnich om't it wachtwurd korrekt is.