【问题标题】:Getting 404 error page content with Http WebRequest?使用 Http WebRequest 获取 404 错误页面内容?
【发布时间】:2011-11-24 19:07:51
【问题描述】:
我使用 Http WebRequest 和 Vb.Net 来下载内容。一切正常,但现在我遇到了问题:
我想下载这个网站,它是一个 404 错误页面的示例,内容为:http://www.boris-koch.de/404seiteyeah
但随后我收到此错误:“Webexception - 404”。而且我无法阅读页面的内容,因为响应什么都没有。那么你知道如何处理它并获取404错误页面的内容吗?
非常感谢。 :)
【问题讨论】:
标签:
.net
httpwebrequest
http-status-code-404
【解决方案1】:
您可以通过Response 属性在WebException 内访问WebResponse 。这将包含响应数据。例如,在 C# 中(VB 代码将非常相似):
using System;
using System.IO;
using System.Net;
class Program
{
static void Main(string[] args)
{
string url = "http://www.boris-koch.de/404seiteyeah";
WebRequest req = WebRequest.Create(url);
try
{
using (WebResponse response = req.GetResponse())
{
Console.WriteLine("Didn't expect to get here!");
}
}
catch (WebException e)
{
WebResponse response = e.Response;
using (StreamReader reader =
new StreamReader(response.GetResponseStream()))
{
string text = reader.ReadToEnd();
Console.WriteLine(text);
}
}
}
}