ការកំណត់ប្រូកស៊ី Watson Node SDK សម្រាប់សំណើ API និង IAM
ចែករំលែកភ្នាក់ងារផ្លូវរូងក្រោមដីរវាងអតិថិជនសេវា 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 បន្ថែមនេះអនុវត្តចំពោះអ្នកផ្ទៀងផ្ទាត់ដែលផ្អែកលើបណ្តាញដែលប្រើនៅទីនេះ។