Watson dei batek zerbitzura iritsi aurretik huts egiten duenean, egiaztatu huts egin duen eskaera IAM tokenaren eskaera den. IAM bidez autentifikatutako dei batek lehenengo IAM-ekin eta gero zerbitzuarekin kontaktatu dezake.

Dagokion Watson SDK eta tunnel menpekotasuna erabiltzen dituen aplikazio batean, eman sare-ezarpen berak bi objektuei:

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

Mantendu aplikazioaren lehendik dauden apiKey, serviceVersion eta serviceUrl balioak. API eta IAM amaierako puntuak beren xede diren helmugak izaten jarraitzen dute; proxy entzulea agentearen barruan dago. HTTP proxy zerrendak hautagai helbideak eman ditzake zerbitzuaren bi amaierako puntu publikoei zuk aukeratutako proxy baten bidez heltzen ahal zaienean.

tunnel.httpsOverHttp HTTP proxyaren bidez HTTPS bidea ezartzen du. proxy: false-ek SDKari eragozten dio agente pertsonalizatu horren gainean beste proxy konfigurazio integratu bat aplikatzea.

Lehen ezarpen horiek assistant objektuari soilik ematen zenizkion, autentifikatzailea da falta den egiaztatzeko lekua. Autentifikazio arruntak eta jada jaulkitako bearer tokenak tokena lortzeko bizi-ziklo desberdinak dituzte, beraz IAM bide gehigarri hau hemen erabiltzen den sarean oinarritutako autentifikatzaileari dagokio.

Erlazionatutako artikuluak