最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

c# - Microsoft Graph API hangs indefinitely when called from Swagger API Service - Stack Overflow

programmeradmin2浏览0评论

I am running into a very odd issue the following call to Microsoft's Graph API hangs indefinitely, never finishing. This only happens when the process is invoked from a Swagger.

When called from Tests or anything else code works fine...

The code that is hanging up is below:

var usersResponse = await graphServiceClient.Users.GetAsync(requestConfiguration =>
{ 
        requestConfiguration.QueryParameters.Filter = "accountEnabled eq true";
});

I have tried changing how I call the GetAsync method Synchronously - I have also tried the following, but the same issue persists:

var usersResponse = graphServiceClient.Users.GetAsync(requestConfiguration =>
{
        requestConfiguration.QueryParameters.Filter = "accountEnabled eq true";
}).GetAwaiter().GetResult();

What can I do to avoid/fix this issue? I'd like to avoid completely refactoring again to use something other than a Swagger service invocation.

EDIT: A reproduceable sample of code is below, can confirm this is hanging for me when debugging locally:

[HttpGet]
[Route("api/CoreUserController/RunUserSyncTest")]
public void RunUserSyncTest()
{
    string tenantId = "My Tenant Id";
    string clientId = "My Client Id";
    string clientSecret = "My Client Secret";
    string[] scopes = new[] { "/.default" };
    Azure.Identity.TokenCredentialOptions options = new Azure.Identity.TokenCredentialOptions
    {
        AuthorityHost = AzureAuthorityHosts.AzurePublicCloud
    };
    Azure.Identity.ClientSecretCredential clientSecretCredential = new Azure.Identity.ClientSecretCredential(tenantId, clientId, clientSecret, options);
    Microsoft.Graph.GraphServiceClient graphServiceClient = new Microsoft.Graph.GraphServiceClient(clientSecretCredential, scopes);

    var usersResponse = graphServiceClient.Users.GetAsync(requestConfiguration =>
    {
        requestConfiguration.QueryParameters.Filter = "accountEnabled eq true";
    }).GetAwaiter().GetResult();
}
发布评论

评论列表(0)

  1. 暂无评论