首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpWebRequest接受500内部服务器错误

HttpWebRequest接受500内部服务器错误
EN

Stack Overflow用户
提问于 2013-08-23 21:16:18
回答 2查看 35.2K关注 0票数 16

这是我的代码:

代码语言:javascript
复制
HttpWebRequest req = WebRequest.Create(url) as HttpWebRequest;

WebResponse wr = req.GetResponse();

当服务器返回500内部服务器错误时,在req.GetResponse()中抛出异常。我希望GetResponse()接受此响应码,传递的url抛出此响应码是正常的。我想解析Html,尽管响应代码500内部服务器错误。是否可以对GetResponse()方法说不验证响应码?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-23 21:20:31

代码语言:javascript
复制
try
{
    HttpWebRequest req = WebRequest.Create(url) as HttpWebRequest;

    WebResponse wr = req.GetResponse();
}
catch (WebException wex)
{
    var pageContent = new StreamReader(wex.Response.GetResponseStream())
                          .ReadToEnd();
}
票数 50
EN

Stack Overflow用户

发布于 2017-11-06 09:07:48

我用下面的代码解决了这个问题:

代码语言:javascript
复制
class Program
{
    static void Main(string[] args)
    {
        var soap = @"<s:Envelope xmlns:s=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:tem=""http://tempuri.org/""><s:Body><GetData xmlns = ""http://tempuri.org/""><value>2</value></GetData></s:Body></s:Envelope>";

        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(@"http://localhost:51148/Service1.svc");

        req.Headers.Add($"SOAPAction", "http://tempuri.org/IService1/GetData");
        req.ContentType = "text/xml;charset=\"utf-8\"";

        byte[] data = System.Text.Encoding.UTF8.GetBytes(soap);
        req.ContentLength = data.Length;

        req.Accept = "text/xml";
        req.Method = "POST";

        Stream stm = req.GetRequestStream();
        stm.Write(data, 0, data.Length);

        try
        {

            WebResponse response = req.GetResponse();
            Stream responseStream = response.GetResponseStream();
        }
        catch (WebException webex)
        {
            WebResponse errResp = webex.Response;
            using (Stream respStream = errResp.GetResponseStream())
            {
                StreamReader reader = new StreamReader(respStream);
                string text = reader.ReadToEnd();
            }
        }
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18403846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档