API және IAM сұраулары үшін Watson Node SDK прокси параметрлері
Токен алу проксиді қолдана алуы үшін туннель агентін Watson қызмет клиенті мен оның IAM аутентификаторы арасында бөлісіңіз.
Watson шақыруы қызметке жетпей сәтсіз аяқталса, сәтсіз сұрау IAM токен сұрауы екенін тексеріңіз. IAM арқылы аутентификацияланған шақыру алдымен IAM-ға, содан кейін қызметке хабарласуы мүмкін.
Тиісті Watson SDK мен tunnel тәуелділігін қолданып жатқан қолданбада екі нысанға бірдей желілік параметрлерді беріңіз:
const tunnel = require('tunnel');
const AssistantV2 = require('ibm-watson/assistant/v2');
const { IamAuthenticator } = require('ibm-watson/auth');
const httpsAgent = tunnel.httpsOverHttp({
proxy: { host: 'proxy.example', port: 8080 },
});
const network = { httpsAgent, proxy: false };
const authenticator = new IamAuthenticator({
apikey: apiKey,
...network,
});
const assistant = new AssistantV2({
version: serviceVersion,
serviceUrl,
authenticator,
...network,
});Қолданбаның бар apiKey, serviceVersion және serviceUrl мәндерін сақтаңыз. API және IAM соңғы нүктелері өздерінің мақсатты мекенжайлары болып қалады; прокси тыңдаушысы агенттің ішінде болады. HTTP прокси тізімі қызметтің екі жария соңғы нүктесіне өзіңіз таңдаған прокси арқылы қол жеткізуге болатын кезде үміткер мекенжайларды ұсына алады.
tunnel.httpsOverHttp HTTP прокси арқылы HTTPS жолын орнатады. proxy: false SDK-ның сол теңшелген агенттің үстінен тағы бір кірістірілген прокси конфигурациясын қолдануына жол бермейді.
Бұл параметрлерді бұрын тек assistant нысанына берген болсаңыз, аутентификатор — тексеруді қажет ететін жетіспейтін орын. Негізгі аутентификация мен бұрын берілген bearer токеннің токен алу өмірлік циклдері өзгеше, сондықтан бұл қосымша IAM жолы осында қолданылатын желіге негізделген аутентификаторға қатысты.