Ошибка: ошибка аргумента: имя пользователя и пароль требуются, если не задано use_unauthenticated - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь использовать службу STT с iam apikey.

Если я устанавливаю учетные данные IAM, как показано в документации (ниже), я получаю сообщение об ошибке: требуются имя пользователя и пароль, если не задано значение use_unauthenticated

let speech_to_text = new SpeechToTextV1({
  iam_apikey: STT_credentials.apikey,
  iam_url: STT_credentials.url
});

Если яПередав значение use_anauthenticated, я получаю ответ 401:

let speech_to_text = new SpeechToTextV1({
  iam_apikey: STT_credentials.apikey,
  iam_url: STT_credentials.url,
  use_unauthenticated: true
});

ответ:

Error! Code:401 Type: undefined Message: Unauthorized

Если я смотрю на файл с ошибкой:

/Users/jward/Desktop/speech_lab_assets/STT/node_mod
ules/watson-developer-cloud/lib/base_service.js:73:13

Iобратите внимание, что он выдаст ошибку, если нет имени пользователя / пароля:

if (!options.use_unauthenticated) {
    if (!options.username || !options.password) {
      throw new Error('Argument error: username and password are required unless use_unauthenticated is set');
    }

Как мне использовать IAM, если имя пользователя / пароль является требованием watson-developer-cloud оснастка?Это проблема с модулем узла или я что-то не так делаю?

Я использую watson-developer-cloud@2.42.0

1 Ответ

0 голосов
/ 28 февраля 2019

Конечная точка указана как url, а не iam_url, как у вас есть.

Это работает для меня -

const  STTV1 = require('watson-developer-cloud/speech-to-text/v1');

let sttService = new STTV1({
  url: url,
  iam_apikey = apikey
});

...