【问题标题】:HTTP request not responding [duplicate]HTTP 请求没有响应 [重复]
【发布时间】:2012-06-28 04:51:41
【问题描述】:

可能重复:
Adjusting HttpWebRequest Connection Timeout in C#

在我的代码中,我正在调用实时聊天 api 来获取以下格式的操作员列表:

            HttpWebRequest request
                = WebRequest.Create("url-here") as HttpWebRequest;
            request.Credentials
                = new NetworkCredential(
                    username,
                    password
                    );

            using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
            {
                StreamReader reader = new StreamReader(response.GetResponseStream());

           //dowhatever
            }

今天实时聊天 API 宕机了,因为我们的网站也宕机了。在这种情况下,api 请求继续旋转并处于“未响应”状态。

如何解决这个问题?我不想继续等到 api 响应。因为它会导致我的页面也继续旋转。有没有类似超时的方法 - 或者等待 2 秒然后跳过实时聊天请求部分?

感谢您的帮助!

【问题讨论】:

    标签: c# http-request


    【解决方案1】:

    您可以使用WebRequest.Timeout property 设置您希望代码在超时前等待多长时间:

    var request = WebRequest.Create("url-here") as HttpWebRequest;
    request.Credentials = new NetworkCredential(username, password);
    request.Timeout = 30 * 1000; // wait for 30 seconds (30,000 milliseconds)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-04
      • 1970-01-01
      • 1970-01-01
      • 2020-07-31
      • 2018-04-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多