ক্লাসিক Groovy HTTPBuilder-এর জন্য প্রমাণিত প্রক্সি সেটিংস
প্রক্সির হোস্ট ও পোর্টের জন্য ক্লাসিক HTTPBuilder রুট এবং এর Apache ক্রেডেনশিয়াল প্রোভাইডার কনফিগার করুন।
ক্লাসিক groovyx.net.http.HTTPBuilder ব্যবহার করা অ্যাপ্লিকেশনের জন্য, বিল্ডারে রুট এবং এর Apache HTTP ক্লায়েন্টের ক্রেডেনশিয়াল প্রোভাইডারে প্রক্সি অ্যাকাউন্ট সেট করুন:
import groovyx.net.http.HTTPBuilder
import org.apache.http.auth.AuthScope
import org.apache.http.auth.UsernamePasswordCredentials
def http = new HTTPBuilder('https://api.example.net')
http.setProxy('proxy.example.net', 8080, 'http')
http.client.credentialsProvider.setCredentials(
new AuthScope('proxy.example.net', 8080),
new UsernamePasswordCredentials(proxyUser, proxyPassword)
)
ক্রেডেনশিয়াল ভেরিয়েবলগুলো অ্যাপ্লিকেশন থেকে আসে। AuthScope ঠিক উপরে কনফিগার করা প্রক্সি হোস্ট ও পোর্টের সাথে মেলে। এই বিল্ডারের মাধ্যমে করা পরবর্তী অনুরোধগুলো সেই কনফিগার করা ক্লায়েন্ট ব্যবহার করে।
ক্লাসিক HTTPBuilder-এর ডিফল্ট বাস্তবায়ন একটি Apache DefaultHttpClient তৈরি করে, এবং এর পাবলিক setProxy মেথড সেই ক্লায়েন্টের ডিফল্ট প্রক্সি রুট সেট করে। অ্যাপ্লিকেশন নিজেই Grails বা Tomcat-এর ভিতরে চললেও এটি প্রাসঙ্গিক কনফিগারেশন অবজেক্ট।
উদাহরণটি সেই ক্লাসিক API-কে লক্ষ্য করে। HTTPBuilder-NG-এর ভিন্ন কনফিগারেশন মডেল আছে, এবং যে অ্যাপ্লিকেশন ক্লাসিক বিল্ডারের অন্তর্নিহিত ক্লায়েন্ট প্রতিস্থাপন করে তাকে প্রতিস্থাপনটি সমর্থিত ইন্টারফেস ব্যবহার করতে হবে। অ্যাপ্লিকেশন কনফিগারেশন থেকে লোড করার সময় হোস্টনাম, ইন্টিজার পোর্ট এবং প্রক্সি স্কিম আলাদা মান হিসেবে রাখুন।