აპლიკაციისთვის, რომელიც იყენებს კლასიკურ 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 ემთხვევა ზემოთ კონფიგურირებულ პროქსის ჰოსტსა და პორტს. ამ builder-ის გავლით შესრულებული შემდგომი მოთხოვნები იყენებს ამ კონფიგურირებულ კლიენტს.

კლასიკური HTTPBuilder-ის ნაგულისხმევი იმპლემენტაცია ქმნის Apache DefaultHttpClient-ს, ხოლო მისი საჯარო მეთოდი setProxy ადგენს ამ კლიენტის ნაგულისხმევ პროქსის მარშრუტს. ეს არის შესაბამისი კონფიგურაციის ობიექტი მაშინაც, როცა აპლიკაცია თავად Grails-ში ან Tomcat-ში მუშაობს.

მაგალითი მიმართულია სწორედ ამ კლასიკურ API-ზე. HTTPBuilder-NG-ს სხვა კონფიგურაციის მოდელი აქვს და აპლიკაციამ, რომელიც კლასიკური builder-ის საფუძვლის კლიენტს ცვლის, უნდა გამოიყენოს ჩამნაცვლებლის მიერ მხარდაჭერილი ინტერფეისები. ჰოსტის სახელი, მთელი რიცხვი პორტი და პროქსის სქემა ცალკე მნიშვნელობებად შეინახეთ, როცა მათ აპლიკაციის კონფიგურაციიდან ტვირთავთ.

დაკავშირებული სტატიები