Microsoft GRAPH.Net错误OAuth2在Windows服务器中访问邮箱-WINHTTP_CALLBACK_STATUS_REQUEST_ERROR

46scxncf  于 2022-09-21  发布在  .NET
关注(0)|答案(1)|浏览(141)

我有一个使用微软图形访问邮箱的应用程序。它可以在装有Windows 10的dev机器上运行。在服务器上,我得到了下面给出的错误。(Windows SERVER 2016和Windows SERVER 2012)

“系统.Net.Http.Http.HttpRequestException:发送请求时出错。->System.Net.Http.WinHttp异常:错误12002调用WINHTTP_CALLBACK_STATUS_REQUEST_ERROR,‘操作超时’。”

详细错误

状态代码:0 Microsoft.Graph.ServiceException:Code:GeneralException消息:发送请求时出错。->System.Net.Http.HttpRequestException:发送请求时出错。->System.Net.Http.WinHttp异常:错误12002调用WINHTTP_CALLBACK_STATUS_REQUEST_ERROR,‘操作超时’。在System.Threading.Tasks.RendezvousAwaitable1.GetResult() at System.Net.Http.WinHttpHandler.<StartRequestAsync>d_122.MoveNext() --- End of inner exception stack trace --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.RedirectHandler.<SendAsync>d6.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.RetryHandler.<SendAsync>d9.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.CompressionHandler.<SendAsync>d2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.AuthenticationHandler.<SendAsync>d16.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.HttpProvider.<SendRequestAsync>d19.MoveNext() --- End of inner exception stack trace --- at Microsoft.Graph.HttpProvider.<SendRequestAsync>d19.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.HttpProvider.<SendAsync>d18.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.BaseRequest.<SendRequestAsync>d40.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Microsoft.Graph.BaseRequest.<SendAsync>d341.MoveNext()-来自抛出异常的前一位置的堆栈结束跟踪-在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task任务)在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task任务)在Microsoft.Graph.MailFolderMessagesCollectionRequest.d_3.MoveNext()-来自抛出异常的前一位置的堆栈跟踪-在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task任务)在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task任务)在System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()

h9a6wy2h

h9a6wy2h1#

我一直在跟踪完全相同的问题,并发现我们的机器使用Netsh配置了一个代理,而代理服务器不可用。所以“操作超时”是100%有效的。

您可以通过从命令提示符调用“netsh winhttp show proxy”进行检查。我们的代理来自较旧的测试场景,因此我们只需在管理命令提示符下使用“netsh winhttp Reset Proxy”将其清除。

我认为这只是在升级Microsoft.Graph Nuget包后才在我们的服务器上崩溃的。也许它已经进行了“改进”,以遵循系统范围的代理服务器配置。

这也解释了为什么我不能让Fiddler跟踪用于Graph API调用,但它可以用于MSAL身份验证调用。

相关问题