首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C#如何使用响应状态码创建WebException

C#中可以使用HttpWebRequest类来发送HTTP请求,并通过获取响应的状态码来创建WebException。下面是一个示例代码:

代码语言:csharp
复制
using System;
using System.Net;

class Program
{
    static void Main()
    {
        try
        {
            // 创建一个HttpWebRequest对象
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://example.com");

            // 发送请求并获取响应
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

            // 获取响应的状态码
            HttpStatusCode statusCode = response.StatusCode;

            // 如果状态码不是200(OK),则抛出WebException
            if (statusCode != HttpStatusCode.OK)
            {
                throw new WebException("请求失败,状态码:" + statusCode.ToString(), null, WebExceptionStatus.ProtocolError, response);
            }

            // 处理正常响应
            // ...

            // 关闭响应
            response.Close();
        }
        catch (WebException ex)
        {
            // 处理WebException
            Console.WriteLine("发生WebException:" + ex.Message);
            if (ex.Response != null)
            {
                // 获取WebException的响应
                HttpWebResponse errorResponse = (HttpWebResponse)ex.Response;
                Console.WriteLine("错误响应的状态码:" + errorResponse.StatusCode);
                // ...
                errorResponse.Close();
            }
        }
        catch (Exception ex)
        {
            // 处理其他异常
            Console.WriteLine("发生异常:" + ex.Message);
        }
    }
}

这段代码演示了如何使用C#中的HttpWebRequest类发送HTTP请求,并根据响应的状态码来创建WebException。如果状态码不是200(OK),则抛出WebException,并可以通过WebException的Response属性获取错误响应的详细信息。

推荐的腾讯云相关产品:腾讯云服务器(CVM)、腾讯云对象存储(COS)、腾讯云内容分发网络(CDN)等。你可以通过访问腾讯云官网(https://cloud.tencent.com/)了解更多关于这些产品的详细信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券