IBM Java SDK: Konfigurer proxyer for IAM- og tjenestekall
Angi IAM-autentiseringsleverandørens proxy og tjenestens HttpConfigOptions før en av dem begynner å sende forespørsler.
Angi begge rutene under initialiseringen, med IAM-autentiseringsleverandøren som faktisk ble gitt til tjenesten:
import java.net.InetSocketAddress;
import java.net.Proxy;
import com.ibm.cloud.sdk.core.http.HttpConfigOptions;
var proxy = new Proxy(
Proxy.Type.HTTP,
new InetSocketAddress("proxy.example.net", 8080));
authenticator.setProxy(proxy);
var options = new HttpConfigOptions.Builder()
.proxy(proxy)
.build();
service.configureClient(options);Her er authenticator og service applikasjonens eksisterende objekter. Bruk innstillingene før tokenhenting eller tjenesteforespørsler begynner, med vanlig sertifikatvalidering aktivert. Der applikasjonen kan bruke et offentlig HTTP-endepunkt for begge destinasjonene, finnes kandidatadresser i HTTP-proxylisten.
De to tildelingene dekker forskjellige forespørsler. authenticator.setProxy dekker IAM-tokenruten; service.configureClient bruker proxyen på tjenestetransporten. Konfigurering av den ene etablerer ikke den andres rute.
Ved feil, identifiser verten som er navngitt i den mislykkede forespørselen. Vellykket tokenhenting begrenser problemet til tjenesteruten; det beviser ikke at ruten mottok proxyinnstillingene sine.
HttpConfigOptions kommer fra IBM Java SDK Core. Når du tilpasser et gammelt ConversationService-eksempel, bruk Core-pakken og tjenestegenerasjonen applikasjonen har valgt, i stedet for å kopiere en eldre tjenestespesifikk nettverksklasse.