我正在.NET Core 2.2中处理HttpClient.timeout。我想知道-这里的超时是整个还是仅计算连接时间(请求建立与远程主机的连接的时间)和套接字时间(连接建立后,主机等待传入数据的时间)连接时间?
我已经搜索了the official docs here,但似乎没有任何解释。有人可以帮我吗?谢谢。
答案 0 :(得分:0)
使用WinHttpHandler,您可以设置以下所示的不同超时时间
var httpMessageHandler = new System.Net.Http.WinHttpHandler();
httpMessageHandler.SendTimeout = TimeSpan.FromSeconds(150);
httpMessageHandler.ReceiveDataTimeout = TimeSpan.FromSeconds(80);
httpMessageHandler.ReceiveHeadersTimeout = TimeSpan.FromSeconds(70);
var httpClient = new HttpClient(httpMessageHandler);
httpClient.Timeout = TimeSpan.FromSeconds(200);
据我所知,您对httpClient.Timeout的问题是整体,但您可以使用上面的方法进行测试。