2

我一直在寻找答案一段时间,我完全被难住了。我正在编写一个屏幕抓取工具,并且在使用 C# WebClient 时遇到 500 内部错误。我已经覆盖了 WebClient 类以包含对 cookie 的支持。

在 Firefox 上,我安装了一个名为 HTTP Resource Test 的插件,通过使用该插件提交发布数据和正确的标题,我能够准确地复制我正在尝试做的事情。我认为现在弄清楚为什么我不能让 C# WebClient 工作的最好方法是能够看到 WebClient 向服务器发出的实际请求。

如何以字符串格式查看 WebClient 向我试图抓取的 Web 服务器发出的请求?

4

1 回答 1

0

您可以使用Fiddler2查看流量。最简单的尝试是将用户代理添加到WebClient.Headers并查看这是否可以解决您的问题:

string userAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E; MS-RTC LM 8)";

client.Headers[HttpRequestHeader.UserAgent] = userAgent;
于 2012-08-07T20:04:08.277 回答