1

在为 Android 使用 ADAL 时,我发现acquireToken() API 错误处理有些令人困惑。

从源代码看来,错误处理似乎应该通过捕获AuthenticationException并检查其ADALError枚举属性来完成。但是,AuthenticationResult类有一个AuthenticationStatus属性,在某些情况下它可能会返回失败(然后我想您应该检查errorCodeerrorDescription属性,但这些属性不符合ADALError枚举)。

此外,似乎(AuthenticationResult.getStatus()==Failed)案例将返回onSuccess () 回调方法,因为onError () 仅返回异常。

有人可以为我清除这个吗?我想知道所有可能的错误路径是什么,以便我可以正确处理所有这些路径。

4

1 回答 1

1

异常用于报告 ADAL 客户端代码中遇到的错误。错误代码有助于识别诸如缺少互联网应用程序权限、连接问题、无效的 redirectUri 格式等问题。它还有助于解决 SSL 握手等常见问题。AuthenticationResult 是报告从服务器(AAD 或 ADFS)返回的错误的地方。调用 onSuccess() 回调的事实表明没有客户端错误,但 AuthenticationResult 可能仍包含服务器返回的错误。

于 2015-03-18T19:17:42.927 回答