проблема несанкционированного в IBM watson помощник Nodejs - PullRequest
0 голосов
/ 02 июля 2019

Я попробовал API Nodejs v1 и v2 помощника IBM Watson, чтобы создать новое преобразование.Но это всегда давало мне один и тот же код ошибки 401 Несанкционированный: доступ запрещен из-за неверных учетных данных.я не знаю, что случилось, заранее спасибо за ваши ответы.

{ Unauthorized: Access is denied due to invalid credentials.
    at RequestWrapper.formatError (E:\Documents\Techniques\Desktop\front_back_end\version-watson\node_modules\ibm-watson\node_modules\ibm-cloud-sdk-core\lib\requestwrapper.js:218:21)
    at E:\Documents\Techniques\Desktop\front_back_end\version-watson\node_modules\ibm-watson\node_modules\ibm-cloud-sdk-core\lib\requestwrapper.js:206:29
    at process._tickCallback (internal/process/next_tick.js:68:7)
  name: 'Unauthorized',
  code: 401,
  message: 'Access is denied due to invalid credentials.',
  body: '{"code":401,"error":"Unauthorized"}',
  headers:
   { 'x-backside-transport': 'FAIL FAIL',
     'content-type': 'application/json',
     'x-dp-transit-id': 'gateway01-1474836587',
     'x-global-transaction-id': '7ecac92c5d14b5ae57e8386b',
     'strict-transport-security': 'max-age=31536000;',
     'x-dp-watson-tran-id': 'gateway01-1474836587',
     'content-length': '37',
     'x-edgeconnect-midmile-rtt': '82',
     'x-edgeconnect-origin-mex-latency': '110',
     date: 'Thu, 27 Jun 2019 12:25:18 GMT',
     connection: 'close' } }

API документа помощника IBM показывает мне такой код:

const AssistantV1 = require('ibm-watson/assistant/v1');
const service = new AssistantV1({
  version: '2019-02-28',
  iam_apikey: '{apikey}',
  url: '{url}'
});

service.message({
  workspace_id: '{workspace_id}',
  input: {'text': 'Hello'}
  })
  .then(res => {
    console.log(JSON.stringify(res, null, 2));
  })
  .catch(err => {
    console.log(err)
  });

Я не уверен, чтодля Версии2 идентификатор сессии правильный или нет.Но API v1 не нужен session_id, он также выдает тот же код ошибки.

Я хочу подтвердить, что «Настройки помощника», «Сведения об API», мы можем найти информацию о ключах.И «{apikey}» - это «Учетные данные службы ---> passeword», а «{workspace_id}» - «Сведения о помощнике ---> Идентификатор помощника».То, что я подтверждаю, правильно, верно?

1 Ответ

0 голосов
/ 02 июля 2019

На V1 всю информацию об учетных данных можно получить через «Просмотр сведений об API» в вашем навыке. View API Details

Apikey находится в пункте Service Credential / Password (имя пользователя будет apikey). В этом интерфейсе также есть идентификатор рабочей области.

Помощник используется только с версией v2, где идентификатор сеанса предоставляется вам во время первого сообщения разговора.

...