当前位置:  开发笔记 > 编程语言 > 正文

WebClient默认超时?

如何解决《WebClient默认超时?》经验,为你挑选了1个好方法。

我从/sf/ask/17360801/看到帖子 ,它说默认超时是100秒.但我看到如何更改.NET WebClient对象的超时的评论说

默认超时为100秒.虽然它似乎运行了30秒. - 卡特12年12月13日16:39

在我的程序中,超时总是大约20秒,是否有人知道原因?



1> Jon Schneide..:

我整理了一个最小的案例来测试WebClient类的默认超时.

我向我的本地PC发布了一个简单的网站,在收到请求后,等待300秒(足够长的时间使WebClient超时),然后返回响应.

我写了一个简单的程序,它使用WebClient向该站点发出请求,并报告发生的情况:

void Main()
{
    Console.WriteLine("Starting request at " + DateTime.Now);
    WebClient client = new WebClient();
    try
    {
        string response = client.DownloadString("http://slowsite.local/");
        Console.WriteLine("Response returned at " + DateTime.Now);
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.GetType() + " " + ex.Message + " at " + DateTime.Now);
    }
}

WebClient在100秒后完成了超时.该程序产生了这个输出:

Starting request at 8/1/2017 9:31:11 AM
System.Net.WebException The request was aborted: The operation has timed out. at 8/1/2017 9:32:51 AM

客户端测试程序针对.NET Framework 4.6.


你能发布最少的repro代码,所以我们可以看到你的程序与我的代码有什么不同吗?如果您可以发布您获得的异常的详细信息以及您的程序使用的.NET版本,这也可能会有所帮助.
推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有