HttpWebRequest.GetResponse() raises exception when http status code 400 (bad request) is returned

参考: .Net HttpWebRequest.GetResponse() raises exception when http status code 400 (bad request) is returned
C# code

using System;
using System.IO;
using System.Net;
 
public class Test
{
    static void Main()
    {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://csharpindepth.com/asd");
        try
        {
            using (Stream data = request.GetResponse().GetResponseStream())
            {
                using (StreamReader reader = new StreamReader(data))
                {
                    string text = reader.ReadToEnd();
                    Console.WriteLine(text);
                }
            }
        }
        catch (WebException ex)
        {
            HttpWebResponse response = (HttpWebResponse) ex.response;
            Console.WriteLine("Error code: {0}", response.StatusCode);
            if (response.StatusCode == HttpStatusCode.BadRequest)
            {
                using (Stream data = response.GetResponseStream())
                {
                    using (StreamReader reader = new StreamReader(data))
                    {
                        string text = reader.ReadToEnd();
                        Console.WriteLine(text);
                    }
                }
            }
        }
    }
}

时间: 2024-11-06 03:30:35

HttpWebRequest.GetResponse() raises exception when http status code 400 (bad request) is returned的相关文章

Failed to load resource: the server responded with a status of 400 (Bad Request) 错误请求解决

前言 这个问题是我在用ajax做文件上传时遇到的,朋友也遇到这种情况,在这里总结一下 分析 Failed to load resource: the server responded with a status of 400 (Bad Request)   是错误请求的报错 出现这种错误一般情况是: 1.前端的参数类型和后端的参数类型不匹配,比如前端string 类型,后端是date类型 <input type="date" id="bornDay" name

华为云 ocr SDK Status code:400

环境:Python 3.7.1 win10 今天在使用 华为云 ocr SDK 时 出现如下错误: 提示输入参数无效 解决: 下载下来的SDK,有个小坑(下图): request_ocr_service_base64() 的参数option 要为None,可以把 1注释,或者删除 2. 第一篇博客,哈哈 原文地址:https://www.cnblogs.com/duoban/p/11206502.html

HttpWebRequest.GetResponse 方法

GetResponse 方法返回包含来自 Internet 资源的响应的 WebResponse 对象. 实际返回的实例是 HttpWebResponse,并且能够转换为访问 HTTP 特定的属性的类. 在一些情况下,当对 HttpWebRequest 类设置的属性发生冲突时将引发 ProtocolViolationException. 如果应用程序将 ContentLength 属性和 SendChunked 属性设置为true,然后发送 HTTP GET 请求,则会引发该异常. 如果应用程序

HTTP状态码(HTTP Status Code)

HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码.它由 RFC 2616 规范定义的,并得到RFC 2518.RFC 2817.RFC 2295.RFC 2774.RFC 4918等规范扩展. HTTP: Status 1xx (临时响应) ->表示临时响应并需要请求者继续执行操作的状态代码. 详细代码及说明: HTTP: Status 100 (继续) -> 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部

HTTP协议状态码详解(HTTP Status Code)(转)

原文链接:HTTP协议状态码详解(HTTP Status Code) 使用ASP.NET/PHP/JSP 或者javascript都会用到http的不同状态,一些常见的状态码为: 200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码. 代码   说明 100   (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分.  101   (切换协议) 请求者已要

python初步学习中的问题之HTTP status code is not handled or not allowed

按照网上的教程学习python,最开始的dmoz_spider项目一直不能正常运行,一直出现下面的问题: 即http status code is not handled or allowed http状态代码没有被处理或允许, 一开始我不理解,在网上找了好多修改setting.py中的 DOWNLOADER_MIDDLEWARES方法也没啥用,心疼自己英语太差,好多问题看不懂... 不过最后还是找到了修改方法: 就是你的http状态码没有被识别,需要在settings.py中添加这个状态码信息

转 Js 跨域CORS报错 Response for preflight has invalid HTTP status code 405

转自:http://www.cnblogs.com/SilenceTom/p/6697484.html 调用接口遇到Response for preflight has invalid HTTP status code 405这样的错误,是使用PUT方式提交请求接口.Content-Type设置为application/json,JS代码如下: $.ajax({ type: "PUT", url: "http://172.16.200.84:8977/Messages?ses

Client tried to access password protected page without proper authorization (status code 401) 无法发布SceneService的解决方法

前不久,一客户反映原来已经部署好的WebGIS系统忽然无法正常运行了,具体配置如下: Portal for ArcGIS 10.5 ArcGIS Server 10.5 Web Adpator 10.5 Data Store 10.5 表现出现的症状就是托管的要素服务可以正常发布,但是三维服务SceneService发布不成功.查看ArcGIS Server的日志,提示如下错误信息: Client tried to acces password protected page without pr

常见http status code

常见http status code 常见的状态码: HTTP: Status200– 服务器成功返回网页 HTTP: Status404– 请求的网页不存在 HTTP: Status503– 服务不可用 ———————————————————————————————— HTTP: Status 1xx(临时响应) ->表示临时响应并需要请求者继续执行操作的状态代码. 详细代码及说明: HTTP: Status 100(继续) -> 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第