Kur një thirrje Watson dështon para se të arrijë te shërbimi, kontrolloni nëse kërkesa e dështuar është kërkesa për token IAM. Një thirrje e autentikuar me IAM mund të kontaktojë fillimisht IAM dhe më pas shërbimin.

Në një aplikacion që tashmë përdor Watson SDK-në përkatëse dhe varësinë tunnel, jepni të njëjtat cilësime rrjeti për të dy objektet:

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,
});

Mbani apiKey, serviceVersion dhe serviceUrl ekzistuese të aplikacionit. Pikat fundore API dhe IAM mbeten destinacionet e tyre të synuara; dëgjuesi i proxy-t i përket agjentit. lista e proxy-ve HTTP mund të ofrojë adresa kandidate kur të dyja pikat fundore publike të shërbimit arrihen përmes një proxy-je që zgjidhni ju.

tunnel.httpsOverHttp vendos rrugën HTTPS përmes proxy-t HTTP. proxy: false e pengon SDK-në të aplikojë një konfigurim tjetër të integruar proxy mbi atë agjent të personalizuar.

Nëse më parë i jepnit këto cilësime vetëm assistant, autentifikuesi është vendi që mungon për t'u kontrolluar. Autentikimi bazë dhe një token bearer i lëshuar tashmë kanë cikle të ndryshme të marrjes së tokenit, prandaj kjo rrugë shtesë IAM vlen për autentifikuesin e bazuar në rrjet që përdoret këtu.

Artikuj të ngjashëm