Impostazioni proxy autenticate per il classico HTTPBuilder di Groovy
Configurate la rotta del classico HTTPBuilder e il suo provider di credenziali Apache per host e porta del proxy.
Per un'applicazione che usa il groovyx.net.http.HTTPBuilder classico, impostate la rotta sul builder e l'account proxy nel provider di credenziali del suo client 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)
)
Le variabili delle credenziali provengono dall'applicazione. L'AuthScope corrisponde all'host e alla porta del proxy configurati subito sopra. Le richieste successive effettuate tramite questo builder usano quel client configurato.
L'implementazione predefinita del classico HTTPBuilder crea un Apache DefaultHttpClient, e il suo metodo pubblico setProxy imposta la rotta proxy predefinita di quel client. È l'oggetto di configurazione rilevante anche quando l'applicazione stessa viene eseguita dentro Grails o Tomcat.
L'esempio si rivolge a quella API classica. HTTPBuilder-NG ha un modello di configurazione diverso, e un'applicazione che sostituisce il client sottostante del builder classico deve usare le interfacce supportate dal sostituto. Mantenete il nome host, la porta intera e lo schema del proxy come valori separati quando li caricate dalla configurazione dell'applicazione.