4

我想更改我的网络浏览器控件的用户代理。我可以做这个:

webbrowserTest.Navigate(new Uri("http://mywebsite.com"), null, "User-Agent: myuseragent");

问题是用户代理只对一个请求有效,对子请求或重定向无效。如何永久更改此用户代理?

4

1 回答 1

-1

因为它是密封类,所以我认为没有某种方法可以拦截 HttpRequest 的创建,我通常会避免这种想法,因为您以后可以有其他请求,不需要 UserAgent/其他标头。这里最简单的事情可能是在单独的静态类中创建扩展方法,例如:

public static class WebBrowserExtensions
{
    public static void NavigateWithUserAgent(this WebBrowser webBrowser, Uri uri)
    {
        webBrowser.Navigate(uri, null, "User-Agent: myuseragent");
    }
}

然后只需调用:

new WebBrowser().NavigateWithUserAgent(new Uri("http://mywebsite.com"));

希望这可以帮助。

于 2013-01-07T15:34:23.900 回答