Странная ошибка с учетными данными Watson в Unity - PullRequest
0 голосов
/ 27 января 2019

Я пытаюсь внедрить Watson Assistant в Unity.

Когда я создаю новый объект Credentials, используя имя пользователя, пароль и serviceUrl в качестве аргументов. ServiceUrl установлен правильно, но имя пользователя и пароль остаются пустыми. Я использую тот же самый точный код для других служб, но именно с этим скриптом я получаю эту ошибку.

//Properties
[SerializeField]
private string _username;
[SerializeField]
private string _password;
[SerializeField]
private string _serviceUrl;

private void CreateService() {
        //Credentials
        Debug.Log(_username);
        Debug.Log(_password);
        Debug.Log(_serviceUrl);

        Credentials credentials = new Credentials(_username, _password, _serviceUrl);

        Debug.Log(credentials.Username);
        Debug.Log(credentials.Password);
        Debug.Log(credentials.Url);

        //Service
        //service = new Assistant(credentials);
}

OUTPUT

username
password
serviceUrl

null
null
serviceUrl

У меня возникла та же проблема с примером скрипта.

Ответы [ 3 ]

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

Я попробовал этот код, и он работает для меня.Вы добавляете свое имя пользователя / passsword / serviceUrl в инспекторе или вы добавляете непосредственно в этот скрипт?Значения могут быть перезаписаны пустыми полями в инспекторе.

enter image description here

0 голосов
/ 29 января 2019

После обновления Watson SDK я больше не вижу эту ошибку ни в одном из скриптов. Все еще не уверен точно, что проблема была в старой версии. Свойства были действительно установлены в инспекторе, и они, казалось, устанавливали значения до тех пор, пока они не были добавлены к объекту.

Это мог быть тот факт, что я не использовал IAM, однако использование имени пользователя и пароля в обновленной версии, кажется, работает нормально.

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

Все службы IBM Watson в IBM Cloud изменены с имени пользователя / пароля на IAM (идентификация и управление доступом) аутентификация .Следовательно, при использовании старого кода, который не был адаптирован, может случиться так, что он ищет имя пользователя и пароль в объекте учетных данных.

...