温馨提示×

c# httpwebrequest怎样设置超时

c#
小樊
138
2024-11-16 20:34:49
栏目: 编程语言

在C#中,要设置HttpWebRequest的超时,您需要设置两个属性:TimeoutReadTimeout。这两个属性分别表示连接超时和读取数据超时。以下是如何设置这些属性的示例:

using System;
using System.Net;
using System.IO;

class Program
{
    static void Main()
    {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://example.com");

        // 设置连接超时(单位:毫秒)
        request.Timeout = 5000; // 5秒

        // 设置读取数据超时(单位:毫秒)
        request.ReadTimeout = 5000; // 5秒

        try
        {
            using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
            {
                using (StreamReader reader = new StreamReader(response.GetResponseStream()))
                {
                    string content = reader.ReadToEnd();
                    Console.WriteLine(content);
                }
            }
        }
        catch (WebException ex)
        {
            Console.WriteLine("请求超时或发生错误: " + ex.Message);
        }
    }
}

在这个示例中,我们将连接超时和读取数据超时都设置为5秒。如果请求在这段时间内没有完成,将会引发一个WebException异常。

0