Microsoft graph api Microsoft Graph API:Java SDK中无效刷新令牌的错误代码和异常是什么?

Microsoft graph api Microsoft Graph API:Java SDK中无效刷新令牌的错误代码和异常是什么?,microsoft-graph-api,Microsoft Graph Api,我正在请求具有刷新令牌的访问令牌,我想尝试处理过期令牌 我无法撤销测试帐户的刷新令牌来尝试解决它 我尝试过给出无效的刷新令牌BI,但它给出了错误 {"error":"invalid_grant","error_description":"AADSTS9002313: Invalid request. Request is malformed or invalid.\r\nTrace ID: ecf9fec9-b75c-4b4c-9c74-70273e6d1b00\r\nCorrelation I

我正在请求具有刷新令牌的访问令牌,我想尝试处理过期令牌

我无法撤销测试帐户的刷新令牌来尝试解决它

我尝试过给出无效的刷新令牌BI,但它给出了错误

{"error":"invalid_grant","error_description":"AADSTS9002313: Invalid request. Request is malformed or invalid.\r\nTrace ID: ecf9fec9-b75c-4b4c-9c74-70273e6d1b00\r\nCorrelation ID: 44946f49-bb25-450d-86d3-121d3f279f21\r\nTimestamp: 2019-07-24 16:15:20Z","error_codes":[9002313],"timestamp":"2019-07-24 16:15:20Z","trace_id":"ecf9fec9-b75c-4b4c-9c74-70273e6d1b00","correlation_id":"44946f49-bb25-450d-86d3-121d3f279f21"}

显然,它检测到它不是一个有效的刷新令牌,与过期的令牌相对应。我们最近更新了文档,以帮助获取访问令牌

要确保您拥有最新的信息,请查看以下步骤

启动客户端

像这样

ClientCredentialProvider authProvider = new ClientCredentialProvider(CLIENT_ID, SCOPES, CLIENT_SECRET, TENANT_GUID, NATIONAL_CLOUD);

IGraphServiceClient graphClient = GraphServiceClient
                .builder()
                .authenticationProvider(authProvider)
                .buildClient();
您需要决定在这里需要哪个提供商

可能是这个

AuthorizationCodeProvider authProvider = new AuthorizationCodeProvider(
                                                    clientId,
                                                    scopes,
                                                    authorizationCode,
                                                    redirectUri,
                                                    clientSecret);

我们最近更新了文档,以帮助获取访问令牌

要确保您拥有最新的信息,请查看以下步骤

启动客户端

像这样

ClientCredentialProvider authProvider = new ClientCredentialProvider(CLIENT_ID, SCOPES, CLIENT_SECRET, TENANT_GUID, NATIONAL_CLOUD);

IGraphServiceClient graphClient = GraphServiceClient
                .builder()
                .authenticationProvider(authProvider)
                .buildClient();
您需要决定在这里需要哪个提供商

可能是这个

AuthorizationCodeProvider authProvider = new AuthorizationCodeProvider(
                                                    clientId,
                                                    scopes,
                                                    authorizationCode,
                                                    redirectUri,
                                                    clientSecret);

Microsoft Identity在此处提供了有关刷新令牌的文档

这里有一个错误代码列表

Microsoft Identity在此处提供了有关刷新令牌的文档

这里有一个错误代码列表

通常,针对错误类别进行操作是最佳实践。例如,对于过期的刷新令牌,通常的响应是要求用户交互,并且用户再次进行身份验证。我们的MSAL库将抛出一个用户交互必需的异常,然后您的应用程序将调用以交互方式获取所需的令牌

通常最好的做法是针对错误类别进行操作。例如,对于过期的刷新令牌,通常的响应是要求用户交互,并且用户再次进行身份验证。我们的MSAL库将抛出一个用户交互必需的异常,然后您的应用程序将调用以交互方式获取所需的令牌

嗨,杰里米。我想你误解了我的问题。我可以请求我需要的令牌,没有问题。我想知道当我使用所述刷新令牌请求访问令牌时,如果我提供撤销的刷新令牌,错误图会返回什么?嗨,Jeremy。我想你误解了我的问题。我可以请求我需要的令牌,没有问题。我想知道当我使用所述刷新令牌请求访问令牌时,如果我提供撤销的刷新令牌,错误图会返回什么?