gpt4 book ai didi

windows-phone-7 - 修改 Windows Phone WebBrowser 控件的用户代理

转载 作者:行者123 更新时间:2023-12-04 18:13:20 25 4
gpt4 key购买 nike

我们在 Windows Phone 7x 应用程序中嵌入了一个 WebBrowser。此 WebBrowser 指向我们的 Web 服务器。我们需要能够区分来自应用程序的请求和来自 native 浏览器(例如嵌入在另一个应用程序中的 WebBrowser)的请求。为此,我们想修改来自所述 WebBrowser 的所有 HTTP 请求的用户代理。

但是,我找不到这样做的方法。我最初的想法是简单地覆盖 Navigate 函数,添加“additionalHeaders”。不幸的是,WebBrowser 类是密封的,所以这个选项根本不是一个选项。我到处搜索了一个我可能无法利用的暴露的属性或处理程序。

那么,简而言之,有没有办法为所有出站 HTTP 请求修改 WebBrowser 的用户代理?

最佳答案

我知道这个问题很老,但如果这对任何人都有用,你总是可以将它用于 WebBrowser 的导航事件:

    void wb_Navigating(object sender, NavigatingEventArgs e)
{
if (!e.Uri.ToString().Contains("!!!"))
{
e.Cancel = true;
string url = e.Uri.ToString();
if (url.Contains("?"))
url = url + "&!!!";
else
url = url + "?!!!";
wb.Navigate(new Uri(url), null, "User-Agent: " + "Your User Agent");
}
}

您只需添加“!!!”到具有您的自定义用户代理的导航的所有 url。如果 URL 不包含“!!!”,则它是来自单击链接的请求,WebBrowser 取消导航,并使用您的自定义用户代理和“!!!”重新导航在查询字符串中。

关于windows-phone-7 - 修改 Windows Phone WebBrowser 控件的用户代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12185155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com