首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么(HttpWebResponse)request.GetResponse()方法返回错误页的状态码200?

为什么(HttpWebResponse)request.GetResponse()方法返回错误页的状态码200?
EN

Stack Overflow用户
提问于 2012-08-02 15:05:26
回答 3查看 717关注 0票数 1

(HttpWebResponse)request.GetResponse()方法返回错误页的状态代码200,而不是状态代码400。

Url是

http://onlinehelp.microsoft.com/zh-cht/office365-smallbusinesses/hh911992.aspx

当我们在浏览器中打开上面的url时,它会显示错误页面,并显示消息“很抱歉!我们无法为您的请求提供服务。”

但是从webresponse返回的状态码是200。

我为它编写的代码是

代码语言:javascript
复制
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(loclink);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
code = (int)response.StatusCode; 

请帮我跟踪这种类型的网址?

EN

回答 3

Stack Overflow用户

发布于 2012-08-02 15:18:59

老实说,这感觉不对。我也去过那里,也同样感到困惑。

这是一个所谓的“软错误页面”。这是因为when服务器在遇到错误时会将您重定向到该页面,而不是传输实际的错误页面。

票数 1
EN

Stack Overflow用户

发布于 2012-08-02 15:14:24

似乎此服务器不强制错误页面的状态代码,因此您可以尝试检查此页面是否包含特殊元素/单词。

票数 0
EN

Stack Overflow用户

发布于 2012-08-02 15:52:51

在尝试验证我们其中一个站点的安全指标问题时,我遇到了这个问题。

你得到200而不是400的原因是因为服务器正在优雅地处理错误,而不是向你显示实际的错误页面,它会捕获它并将你重定向到一个友好的“发生意外错误”页面,该页面显然会显示200响应。

要获得实际的错误代码,您可以尝试通过以下方式请求Telnet中的页面:

GET /zh-cht/office365-smallbusinesses/hh911992.aspx

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11772579

复制
相关文章

相似问题

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