هر دو مسیر را هنگام راه‌اندازی تنظیم کنید و از همان احرازکننده 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 و نسل سرویس انتخاب‌شده توسط برنامه را به کار ببرید، نه کپی کردن یک کلاس شبکه قدیمی مخصوص سرویس.

مقالات مرتبط