د RestTemplate پروکسي اعتبارنامې د HttpClient 5 سره محدودې کړئ
د Apache HttpClient 5 اعتبارنامې د Spring 6 RestTemplate ته د لېږد ورکولو دمخه د پروکسي هوسټ او پورټ پورې محدودې کړئ.
پروکسي ته ننوتل د لېږد د اعتبارنامې چمتو کوونکي پورې اړه لري. د Spring 6 او Apache HttpClient 5 لپاره، هغه حساب منځګړي ته محدود کړئ:
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);اپلیکیشن د proxyUser او proxyPassword ارزښتونه برابروي او د HTTP کلاینټ د ژوند دوران مالک دی. د کار بار لپاره rest بیا وکاروئ، پرته له دې چې د زنګ په ځای کې بل ډیفالټ کالبوډ جوړ کړئ.
AuthScope محدودوي چې دا اعتبارنامې چېرته معتبرې دي. بېلګه عادي د کارن نوم/پټنځای اعتبارنامې برابروي؛ د BasicCredentialsProvider نوم هر ننګونې ته اړ نه کوي چې د HTTP Basic سکیم وکاروي.
د HTTPS منزل سره، لېږد کولای شي د CONNECT په جریان کې د پروکسي ننګونې ځواب ووايي، مخکې له دې چې د اپلیکیشن کوډ شوې HTTP غوښتنه شتون ولري. عمومي منزل انټرسیپټر چې Proxy-Authorization اضافه کوي له هغه خبرو اترو سره برابر نه دی.
هر د منزل حساب جدا جدا تنظیم کړئ. که پروکسي لاهم غوښتنه ردوي، د هغې اعلان شوې تصدیق سکیم او ریښتینی هوسټ او پورټ وساتئ. د بل پای ټکي لپاره محدودې اعتبارنامې به یوازې د دې لپاره چې پټنځای سم دی سمون ونه خوري.