Nígbà tí ìpè Watson bá kùnà kí ó tó dé iṣẹ́, ṣàyẹ̀wò bóyá ìbéèrè tí ó kùnà ni ìbéèrè token IAM. Ìpè tí IAM fọwọ́sí lè kọ́kọ́ kàn sí IAM, lẹ́yìn náà kí ó kàn sí iṣẹ́.

Nínú ohun èlò tí ń lo Watson SDK tó yẹ àti dependency tunnel tẹ́lẹ̀, fún àwọn ohun méjèèjì ní àwọn ètò nẹ́tíwọ́kì kan náà:

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

Pa apiKey, serviceVersion àti serviceUrl tí ó wà nínú ohun èlò mọ́. API àti IAM endpoint wà gẹ́gẹ́ bí ibi tí wọ́n ní lọ́kàn; olùgbọ́ proxy jẹ́ ti agent. àtòjọ proxy HTTP lè pèsè àwọn àdírẹ́sì olùdíje nígbà tí a bá lè dé àwọn endpoint iṣẹ́ gbogbo ènìyàn méjèèjì nípasẹ̀ proxy tí o yàn.

tunnel.httpsOverHttp ń gbé ọ̀nà HTTPS kalẹ̀ nípasẹ̀ HTTP proxy. proxy: false ń dá SDK lọ́wọ́ láti fi ètò proxy mìíràn tí a kọ́ sínú kún agent àkànṣe yẹn.

Bí o bá ti fún assistant nìkan ní àwọn ètò wọ̀nyí tẹ́lẹ̀, authenticator ni ibi tí ó ṣẹ́ kù tí ó yẹ kí a ṣàyẹ̀wò. Ìfọwọ́sí ìpìlẹ̀ àti bearer token tí a ti pèsè ní àwọn ìyípadà gbígba token tí ó yàtọ̀, nítorí náà ọ̀nà IAM àfikún yìí kan authenticator tí ó dá lórí nẹ́tíwọ́kì tí a ń lò níbí.

Àwọn àpilẹ̀kọ tó jọra