我正在尝试将Watson Assistant实施到Unity中。
当我使用用户名,密码和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);
}
输出
username
password
serviceUrl
null
null
serviceUrl
我在示例脚本中遇到了同样的问题。
答案 0 :(得分:0)
IBM Cloud上的所有IBM Watson服务都从用户名/密码更改为IAM (identity and access management) authentication。因此,当您使用未经修改的旧代码时,可能会在凭据对象中查找用户名和密码。
答案 1 :(得分:0)
答案 2 :(得分:0)
更新Watson SDK之后,我不再在任何脚本中都遇到此错误。仍然不确定确切的问题在旧版本中。这些属性确实是在检查器中设置的,它们似乎可以将值设置得很好,直到将其添加到对象中为止。
可能不是我使用IAM的事实,但是在更新版本中使用用户名和密码似乎可以正常工作。