የWatson Node SDK ፕሮክሲ ቅንብሮች ለAPI እና IAM ጥያቄዎች
የመጠቅለያውን (tunnel) ወኪል በ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 የHTTPS መንገዱን በHTTP ፕሮክሲ በኩል ያቋቁማል። proxy: false SDKው በዚያ ብጁ ወኪል ላይ ሌላ አብሮ የተሰራ የፕሮክሲ ውቅር እንዳይተገበር ይከላከላል።
ከዚህ በፊት እነዚህን ቅንብሮች ለassistant ብቻ ካቀረቡ፣ አረጋጋጩ መፈተሽ ያለበት የጎደለው ቦታ ነው። መሰረታዊ ማረጋገጫ እና አስቀድሞ የተሰጠ bearer ቶከን የተለያየ የቶከን ማግኛ ዑደት አላቸው፣ ስለዚህ ይህ ተጨማሪ የIAM መንገድ እዚህ ለሚጠቀመው በኔትወርክ ላይ የተመሰረተ አረጋጋጭ ይመለከታል።