使用WebClient类模拟来自IE客户端的请求?

时间:2009-05-04 23:45:31

标签: c# .net webclient

我正在使用.NET 3.5中的WebClient类下载文件。我想确保在服务器端,请求的文件似乎是用IE客户端下载的。我有什么要改变的?

我是否只是将IE生成的标题信息复制到WebClient对象的Header属性中?还有什么我需要做的吗?

由于

2 个答案:

答案 0 :(得分:3)

根据您的需要,仅设置用户代理标头可能就足够了。 http://msdn.microsoft.com/en-us/library/system.net.webclient(VS.80).aspx

有一个例子

答案 1 :(得分:0)

简短的回答是肯定的。

以下代码提供了完整的标题信息,只需在浏览器中运行即可,您将完成设置。

<html>
<body>

<script type="text/javascript">
var x = navigator;
document.write("CodeName=" + x.appCodeName);
document.write("<br />");
document.write("MinorVersion=" + x.appMinorVersion);
document.write("<br />");
document.write("Name=" + x.appName);
document.write("<br />");
document.write("Version=" + x.appVersion);
document.write("<br />");
document.write("CookieEnabled=" + x.cookieEnabled);
document.write("<br />");
document.write("CPUClass=" + x.cpuClass);
document.write("<br />");
document.write("OnLine=" + x.onLine);
document.write("<br />");
document.write("Platform=" + x.platform);
document.write("<br />");
document.write("UA=" + x.userAgent);
document.write("<br />");
document.write("BrowserLanguage=" + x.browserLanguage);
document.write("<br />");
document.write("SystemLanguage=" + x.systemLanguage);
document.write("<br />");
document.write("UserLanguage=" + x.userLanguage);
</script>

</body>
</html>