阻止在 IE 浏览器中打开 webview

Posted

技术标签:

【中文标题】阻止在 IE 浏览器中打开 webview【英文标题】:Prevent webview from opening in IE Browser 【发布时间】:2014-06-07 13:36:19 【问题描述】:

我有一个与这个问题相反的问题 Open link in IE on Windows store metro apps

我有一个 Windows 商店应用程序,用户登录到网页并导航到不同的页面,所有页面都是 https。但是某些页面似乎在 IE 浏览器中打开,导致 IE 浏览器再次向用户查询登录名和密码,因为它是新浏览器。

我不希望它在 IE 浏览器中打开,但所有链接在应用程序的 webview 实例中保持打开状态。

这是我的代码片段(teamScreen 全局声明的私有字符串)

string teamScreen = "https://mysite.com/Login.aspx?" + "username=" + logInUserIdString + "&password=" + logInPasswordString + "&mobile=1&offsetHours=" + timezone;

 protected override void OnNavigatedTo(NavigationEventArgs e)
        
            Uri targetUri = new Uri(teamScreen);
            webView1.Navigate(targetUri);
        

如何阻止 webview 中的链接从外部打开?

谢谢

【问题讨论】:

导致IE打开的链接是否设置为target="_blank" 感谢wiredpraire。与 target=_blank 上的服务器小伙交谈,当 Windows 商店应用程序访问该网站时,他将删除它。不影响 android 或 iPhone 版本。一旦我把它排序,我会发布答案。再次感谢 【参考方案1】:

WiredPrairie 直面问题。

服务器小伙子在页面中有一些新链接,其 target="_black" 会强制在浏览器中创建一个新选项卡。因此假设 Windows Store App webview 不允许选项卡,它强制网页打开设备上的 IE 浏览器。

一旦删除,问题就消失了。

在 iPhone/iPad 或 Android 版本的应用程序中没有问题,但不确定原因。相同的后端代码,无论哪种方式都是固定的。

【讨论】:

以上是关于阻止在 IE 浏览器中打开 webview的主要内容,如果未能解决你的问题,请参考以下文章

被阻止:Android webView中的csp

如何在浏览器中阻止 webview 中的任何广告,例如 adblock 或 adblock plus?

怎样关闭IE浏览器防火墙

如何解除浏览器的阻止功能

HTTPS错误内容已被阻止怎样解决

网站在有的浏览器能打开别的却打不开怎么办