IBM Watson Assistant在尝试使用它时始终会给出“未经授权”错误

时间:2019-07-05 13:43:52

标签: android kotlin ibm-cloud ibm-watson

我在Watson Assistant中一个非常奇怪的问题中呆了两天

我已经编写了一些代码以能够在我的应用程序中使用它,但它始终会给我401身份验证错误

这是我在IBM云帐户中配置的三项服务

enter image description here

这是我的代码,用于初始化三个服务

private fun initSpeechToTextService(): SpeechToText {

        var options = IamOptions.Builder()
            .apiKey(getString(R.string.speech_text_iam_apikey))
            .url(getString(R.string.speech_text_url))
            .build()
        return SpeechToText(options)
    }

private fun initTextToSpeechService(): TextToSpeech {

        var options = IamOptions.Builder()
            .apiKey(getString(R.string.text_speech_iam_apikey))
            .url(getString(R.string.text_speech_url))
            .build()
        return TextToSpeech(options)
    }

private fun initAssistantService(): Assistant {

        var options = IamOptions.Builder()
            .apiKey(getString(R.string.watson_assistant_iam_apikey))
            .url(getString(R.string.watson_assistant_url))
            .build()

        var service = Assistant("2019-07-04", options)
        service.endPoint = getString(R.string.watson_assistant_url)

        return service
    }

我的问题现在总是得到:401,错误:未经授权

谁能告诉我缺少了什么?

编辑

这是我使用的网址

EDIT2

这是我的调试器窗口的屏幕截图

enter image description here

1 个答案:

答案 0 :(得分:0)

您的助手的服务版本设置为2019-07-04,这是无效的。在此处查看latest and previous versions。这行得通吗?

var service = Assistant("2019-02-28", options)
    service.endPoint = getString(R.string.watson_assistant_url)