Illimita l-kredenzjali tal-proxy ta' RestTemplate bl-HttpClient 5
Illimita l-kredenzjali tal-Apache HttpClient 5 għall-host u l-port tal-proxy qabel ma tforni t-trasport lil RestTemplate Spring 6.
Id-dħul fil-proxy jappartjeni lill-fornitur tal-kredenzjali tat-trasport. Ma' Spring 6 u Apache HttpClient 5, illimita dak il-kont għall-intermedjarju:
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);L-applikazzjoni tforni l-valuri proxyUser u proxyPassword u tippossjedi ċ-ċiklu tal-ħajja tal-klijent HTTP. Erġa uża rest għax-xogħol minflok ma tibni mudell awtomatiku ieħor fil-post tas-sejħa.
AuthScope jillimita fejn dawn il-kredenzjali huma eliġibbli. L-eżempju jforni kredenzjali ordinarji tal-isem tal-utent/password; l-isem BasicCredentialsProvider ma jġiegħelx kull sfida tuża l-iskema HTTP Basic.
B'destinazzjoni HTTPS, it-trasport jista' jwieġeb sfida tal-proxy waqt CONNECT, qabel ma teżisti t-talba HTTP mgħammra tal-applikazzjoni. Interċettur tad-destinazzjoni ġeneriku li jżid Proxy-Authorization mhuwiex ekwivalenti għal dik in-negozjazzjoni.
Ikkonfigura kwalunkwe kont tad-destinazzjoni separatament. Jekk il-proxy xorta jirrifjuta t-talba, żomm l-iskema ta' awtentikazzjoni li jħabbar kif ukoll il-host u l-port effettivi. Kredenzjali limitati għal punt finali ieħor mhux se jaqblu biss għax il-password hija korretta.