无法在Silverlight C#中更改用户代理.我该怎么做

本文关键字:用户代理 我该怎么做 Silverlight | 更新日期: 2023-09-27 18:20:40

我正在字符串中获取html页面,并希望将我的头放入请求中。我试着做这个代码。

 WebClient client = new WebClient();
 WebHeaderCollection coll = new WebHeaderCollection() { { "user-agent", "test" } };
 client.DownloadStringCompleted += client_DownloadStringCompleted;
 string url = API_URL + pagenum;
 client.DownloadStringAsync(new Uri(url));

此代码无效,因为http://msdn.microsoft.com/en-us/library/system.net.webheadercollection.aspx没有添加功能。

client.Headers["user-agent"] = "xyz"

这也是行不通的。我尝试了一下,但得到了一个错误,比如用户代理无法修改。有人可以告诉我怎么修。

我看不到任何能帮助我的东西。如果这里有副本的话。给我指那个帖子。

无法在Silverlight C#中更改用户代理.我该怎么做

根据Silverlight WebHeaderCollection的文档,用户代理被列为无法更改的受限字段,因此似乎无法更改它。

一些常见的标头被认为是受限制的,或者是公开的直接(如内容类型)或受系统保护,不能在WebHeaderCollection对象中设置或更改。任何设置的尝试WebHeaderCollection对象中的这些受限标头之一与HttpWebRequest对象关联会引发异常。任何尝试在与WebClient对象关联的WebHeaderCollection对象将稍后尝试发送WebClient时引发异常要求

这些受限标头中的许多都是由承载的web浏览器设置的Silverlight应用程序。

相关文章: