Kun sovellus käyttää klassista groovyx.net.http.HTTPBuilder-luokkaa, aseta reitti rakentajalle ja välityspalvelimen tili sen Apache HTTP -asiakkaan tunnistetietojen tarjoajaan:

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

Tunnistetietomuuttujat tulevat sovelluksesta. AuthScope vastaa juuri yllä määritettyä välityspalvelimen isäntää ja porttia. Tämän rakentajan kautta tehdyt myöhemmät pyynnöt käyttävät kyseistä määritettyä asiakasta.

Klassisen HTTPBuilderin oletustoteutus luo Apache DefaultHttpClientin, ja sen julkinen setProxy-metodi asettaa kyseisen asiakkaan oletusvälityspalvelinreitin. Tämä on merkityksellinen asetuskohde myös silloin, kun sovellus itse toimii Grailsin tai Tomcatin sisällä.

Esimerkki kohdistuu tuohon klassiseen APIin. HTTPBuilder-NG:ssä on erilainen asetusmalli, ja sovelluksen, joka korvaa klassisen rakentajan taustalla olevan asiakkaan, on käytettävä korvaajan tukemia rajapintoja. Pidä isäntänimi, kokonaislukuportti ja välityspalvelimen skeema erillisinä arvoina, kun lataat ne sovelluksen asetuksista.

Aiheeseen liittyvät artikkelit