För en applikation som använder den klassiska groovyx.net.http.HTTPBuilder ställer du in rutten på byggaren och proxykontot i autentiseringsleverantören för dess Apache HTTP-klient:

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)
)

Autentiseringsvariablerna kommer från applikationen. AuthScope matchar proxyvärden och -porten som konfigurerats direkt ovanför. Efterföljande anrop via den här byggaren använder den konfigurerade klienten.

Standardimplementeringen av den klassiska HTTPBuilder skapar en Apache DefaultHttpClient, och dess offentliga metod setProxy ställer in den klientens standardproxyrutt. Det är det relevanta konfigurationsobjektet även när applikationen själv körs i Grails eller Tomcat.

Exemplet riktar sig mot det klassiska API:t. HTTPBuilder-NG har en annan konfigurationsmodell, och en applikation som ersätter den klassiska byggarens underliggande klient måste använda gränssnitt som ersättningen stöder. Håll värdnamn, heltalsport och proxyschema som separata värden när du läser in dem från applikationskonfigurationen.

Relaterade artiklar