Spring-ত প্ৰত্যক্ষ আৰু প্ৰক্সি RestTemplate বিমসমূহ কনফিগাৰ কৰক
এটা HTTP প্ৰক্সি আৰু এটা স্পষ্ট প্ৰত্যক্ষ JDK সংযোগৰ বাবে পৃথক RestTemplate বিম সৃষ্টি কৰক, প্ৰতিটো কলৰ চাৰিওফালে এটা ভগাই লোৱা পথ সলনি কৰাৰ পৰিৱৰ্তে।
কিছুমান কলত কোম্পানীৰ প্ৰক্সি ব্যৱহাৰ কৰিব লাগে, আনহাতে অন্য এটা সেৱা প্ৰত্যক্ষভাৱে লাভ কৰা হয়। অনুৰোধসমূহ ওপৰত পৰিব পৰা বাবে এটা ভগাই লোৱা ফেক্টৰী সলনি কৰাৰ পৰিৱৰ্তে সেই পথসমূহক পৃথক RestTemplate উদাহৰণ দিয়ক।
এটা বৰ্তমানৰ Spring কনফিগাৰেচন শ্ৰেণীৰ ভিতৰত:
@Bean("directRestTemplate")
RestTemplate directRestTemplate() {
var factory = new SimpleClientHttpRequestFactory();
factory.setProxy(java.net.Proxy.NO_PROXY);
return new RestTemplate(factory);
}
@Bean("proxyRestTemplate")
RestTemplate proxyRestTemplate() {
var factory = new SimpleClientHttpRequestFactory();
factory.setProxy(new java.net.Proxy(
java.net.Proxy.Type.HTTP,
new java.net.InetSocketAddress("proxy.example", 8080)));
return new RestTemplate(factory);
}
Spring 6.2 ৰ JDK অনুৰোধ ফেক্টৰীত Proxy.NO_PROXY এ এটা স্পষ্ট প্ৰত্যক্ষ সংযোগ নীতি যোগান ধৰে। ফেক্টৰীৰ প্ৰক্সি নিষ্ক্ৰিয় ৰখা হ'লে ইয়াৰ পৰিৱৰ্তে সাধাৰণ URLConnection কনফিগাৰেচন পথক অনুমতি দিয়ে, যিয়ে এটা JVM প্ৰক্সি বাছি ল'ব পাৰে।
প্ৰয়োজনীয় বিম বাছি ল'বলৈ ইনজেকচন পইণ্টত @Qualifier ব্যৱহাৰ কৰক, উদাহৰণস্বৰূপে @Qualifier("directRestTemplate") RestTemplate rest। কেৱল দুয়োটা বিম সংজ্ঞায়িত কৰিলে অস্পষ্ট নিৰ্ভৰশীলতাৰ বাবে ইহঁতৰ মাজত বাছনি নহয়।
এই উদাহৰণে এটা অনুমোদনহীন HTTP প্ৰক্সি বাছি লয়। প্ৰক্সি অনুমোদন প্ৰয়োজনীয় এটা পৰিবহন একে বিম-বাছনি ব্যৱস্থা ৰাখিয়েই ইয়াৰ সমৰ্থিত প্ৰমাণপত্ৰ যোগানকাৰীৰ সৈতে পৃথকে নিৰ্মাণ কৰিব পাৰি। Apache HttpClient 5 ৰ সৈতে Spring 6 ৰ বাবে, সেই যোগানকাৰীক প্ৰক্সি এণ্ডপইণ্টত সীমাবদ্ধ কৰক।
এপ্লিকেশ্বনে ইচ্ছাকৃতভাৱে ইনষ্টল কৰা অন্য ইন্টাৰচেপ্টৰ বা অনুৰোধ ফেক্টৰীসমূহ এতিয়াও নিজৰ গ্ৰাহক কনফিগাৰেচনৰ অন্তৰ্গত। সিহঁতক প্ৰকৃততে প্ৰয়োজনীয় পথৰ সৈতে ৰাখক।