IBM Java SDK: กำหนดค่าพร็อกซีสำหรับ IAM และการเรียกใช้บริการ
ตั้งค่าพร็อกซีของตัวรับรองความถูกต้อง IAM และ HttpConfigOptions ของบริการก่อนที่ฝ่ายใดฝ่ายหนึ่งจะเริ่มส่งคำขอ
ตั้งค่าทั้งสองเส้นทางระหว่างการเริ่มต้น โดยใช้ตัวรับรองความถูกต้อง IAM ที่ให้แก่บริการจริง:
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);ในที่นี้ authenticator และ service คือออบเจ็กต์ที่มีอยู่แล้วของแอปพลิเคชัน ใช้การตั้งค่าเหล่านี้ก่อนเริ่มการขอโทเคนหรือคำขอบริการ โดยเปิดการตรวจสอบใบรับรองตามปกติ หากแอปพลิเคชันใช้ปลายทาง HTTP สาธารณะได้สำหรับทั้งสองปลายทาง ที่อยู่ที่เป็นไปได้มีอยู่ในรายการพร็อกซี HTTP
การกำหนดสองจุดนี้ครอบคลุมคำขอที่แตกต่างกัน authenticator.setProxy ครอบคลุมเส้นทางโทเคน IAM ส่วน service.configureClient ใช้พร็อกซีกับการรับส่งของบริการ การกำหนดอย่างหนึ่งไม่ได้สร้างเส้นทางของอีกอย่างหนึ่ง
เมื่อเกิดความล้มเหลว ให้ระบุโฮสต์ที่ระบุไว้ในคำขอที่ล้มเหลว การขอโทเคนสำเร็จเพียงจำกัดปัญหาไว้ที่เส้นทางของบริการ แต่ไม่ได้พิสูจน์ว่าเส้นทางนั้นได้รับตัวเลือกพร็อกซีของตน
HttpConfigOptions มาจาก IBM Java SDK Core เมื่อดัดแปลงตัวอย่าง ConversationService เก่า ให้ใช้แพ็กเกจ Core และรุ่นของบริการที่แอปพลิเคชันเลือก แทนการคัดลอกคลาสเครือข่ายเฉพาะบริการรุ่นเก่า