การตั้งค่าพร็อกซีที่ผ่านการรับรองความถูกต้องสำหรับ HTTPBuilder แบบคลาสสิกของ Groovy
กำหนดค่าเส้นทาง HTTPBuilder แบบคลาสสิกและผู้ให้ข้อมูลรับรอง Apache สำหรับโฮสต์และพอร์ตของพร็อกซี
สำหรับแอปพลิเคชันที่ใช้ groovyx.net.http.HTTPBuilder แบบคลาสสิก ให้กำหนดเส้นทางบน builder และบัญชีพร็อกซีในผู้ให้ข้อมูลรับรองของไคลเอนต์ 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 มีรูปแบบการกำหนดค่าที่แตกต่างกัน และแอปพลิเคชันที่แทนที่ไคลเอนต์พื้นฐานของ builder แบบคลาสสิกต้องใช้อินเทอร์เฟซที่ส่วนแทนที่รองรับ เก็บชื่อโฮสต์ พอร์ตจำนวนเต็ม และสคีมาพร็อกซีเป็นค่าแยกกันเมื่อโหลดจากการกำหนดค่าแอปพลิเคชัน