IBM Java SDK: konfiguriranje proxyja za IAM i pozive servisa
Postavite proxy IAM autentifikatora i HttpConfigOptions servisa prije nego bilo koji od njih počne slati zahtjeve.
Postavite oba puta tijekom inicijalizacije, uz IAM autentifikator koji je servisu stvarno dodijeljen:
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);Ovdje su authenticator i service postojeći objekti aplikacije. Primijenite postavke prije početka dohvaćanja tokena ili zahtjeva servisa, uz uključenu uobičajenu provjeru certifikata. Gdje aplikacija može rabiti javno HTTP završno odredište za oba cilja, kandidatske adrese dostupne su u popisu HTTP proxyja.
Dvije dodjele pokrivaju različite zahtjeve. authenticator.setProxy pokriva put tokena IAM; service.configureClient primjenjuje proxy na prijenos servisa. Konfiguriranje jednoga ne uspostavlja put drugoga.
Kod kvara prepoznajte host naveden u neuspjelom zahtjevu. Uspješno dohvaćanje tokena sužava problem na put servisa; ali ne dokazuje da je taj put primio svoje proxy opcije.
HttpConfigOptions dolazi iz IBM Java SDK Core. Kad prilagođavate stari primjer ConversationService, rabite Core paket i generaciju servisa koju je odabrala aplikacija umjesto kopiranja starije mrežne klase specifične za servis.