使用WebClient类模拟来自IE客户端的请求?
问题描述:
我使用.NET 3.5中的WebClient类下载文件。我想确保在服务器端,所请求的文件似乎是用IE客户端下载的。我需要改变什么?使用WebClient类模拟来自IE客户端的请求?
我是否简单地将IE生成的头信息复制到WebClient对象的Header属性?还有什么我需要做的?
谢谢
答
根据您的需要,只需设置用户代理标头可能就足够了。有一个例子:http://msdn.microsoft.com/en-us/library/system.net.webclient(VS.80).aspx
答
简短的回答是肯定的。
以下代码提供了完整的标题信息,只需在浏览器中运行它即可,您将完成设置。
<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>