Уотсон Реч-текстовая проблема авторизации - PullRequest
0 голосов
/ 12 ноября 2018

Я перевожу 3 услуги Watson со старой учетной записи на учетную запись Lite (чтобы избежать оплаты 1 декабря). Службы Text-to-Speech и Assistant отлично работают в новой учетной записи, но я получаю 401 несанкционированную ошибку с услугой Speech-to-text (STT). Все три создаются с использованием apikey IAM и связанных URL-адресов, как указано на моей панели управления консоли IBM. Если я переключаю STT обратно на свою старую учетную запись (имя пользователя / пароль), она отлично работает с двумя другими службами IAM. Среда представляет собой веб-сайт на основе Java Spring, использующий последнюю версию watson java-sdk (6.9.1) и последнюю версию speech-javascript-sdk. Вот соответствующие записи из журнала:

12 ноября 2018 г. 13:42:13 okhttp3.internal.platform.Platform log ИНФО: -> ПОЛУЧИТЬ https://stream.watsonplatform.net/authorization/api/%2Fv1%2Ftoken?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi HTTP / 1.1

12 ноября 2018 г. 13:42:13 okhttp3.internal.platform.Platform log ИНФО: <- HTTP FAILED: java.io.IOException: неожиданный конец потока включен Соединение {stream.watsonplatform.net:443, прокси = ПРЯМОЙ hostAddress = stream.watsonplatform.net / 169.61.44.182: 443 cipherSuite = TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 протокол = http / 1.1} </p>

12 ноября 2018 г. 13:42:17 okhttp3.internal.platform.Platform log ИНФО: -> ПОЛУЧИТЬ https://stream.watsonplatform.net/authorization/api/%2Fv1%2Ftoken?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi HTTP / 1,1

12 ноября 2018 г. 13:42:17 okhttp3.internal.platform.Platform log ИНФО: <- 301 перемещено навсегда <a href="https://stream.watsonplatform.net/authorization/api/%2Fv1%2Ftoken?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi" rel="nofollow noreferrer">https://stream.watsonplatform.net/authorization/api/%2Fv1%2Ftoken?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi (89мс, 129-байтовое тело)

12 ноября 2018 г. 13:42:17 okhttp3.internal.platform.Platform log ИНФО: -> ПОЛУЧИТЬ https://stream.watsonplatform.net/authorization/api/v1/token?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi http / 1.1 12 ноября 2018 1:42:17 okhttp3.internal.platform.Platform журнал

ИНФОРМАЦИЯ: <- 401 Несанкционированный <a href="https://stream.watsonplatform.net/authorization/api/v1/token?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi" rel="nofollow noreferrer">https://stream.watsonplatform.net/authorization/api/v1/token?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi (116мс, 103-байтовое тело)

12 ноября 2018 13:42:18 com.ibm.watson.developer_cloud.service.WatsonService processServiceCall SEVERE: GET https://stream.watsonplatform.net/authorization/api/v1/token?url=https%3A%2F%2Fstream.watsonplatform.net%2Fspeech-to-text%2Fapi, статус: 401, ошибка: неавторизован

Я попытался определить, что вызывает unexpected end of stream (что, вероятно, является настоящей проблемой здесь), но безуспешно. Для хихиканья я попытался добавить вызов для получения списка SpeechModels сразу после создания SpeechToText, и он работал нормально! Очень любопытный. «Подсказка», сопровождающая последнюю вышеуказанную ошибку, спрашивает, была ли установлена ​​конечная точка, и да, она была установлена ​​правильно.

Любая помощь с благодарностью.

1 Ответ

0 голосов
/ 12 ноября 2018

Неважно. Я был сосредоточен на ошибке Java и не смотрел так пристально на сторону JavaScript в уравнении. Я нашел это примечание в node.js SDK:

ПРИМЕЧАНИЕ. Аутентификация с помощью заголовка X-Watson-Authorization-Token или параметр запроса watson-token теперь устарел. Токен продолжает работа с сервисами Cloud Foundry, но не поддерживается для сервисов которые используют проверку подлинности IAM (Identity and Access Management).

STT в моей старой учетной записи был сервис Cloud Foundry, поэтому он продолжал работать. Мое плохо, что я больше не занимаюсь исследованиями ...

...