You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用EWS委托认证的.NET应用出现“浏览器不支持”错误求助

解决EWS委托认证后出现「浏览器不受支持」错误的方案

问题根源

弹出的登录窗口使用了.NET框架默认的过时浏览器内核(如基于IE的WebBrowser控件),微软的认证页面会将这类内核识别为不支持的浏览器,因此即使登录成功也会触发错误提示。

具体解决步骤

  • 替换Web认证控件为WebView2
    放弃使用System.Windows.Forms.WebBrowser,改用基于Edge Chromium内核的Microsoft.Web.WebView2控件:

    1. 安装NuGet包:Install-Package Microsoft.Web.WebView2
    2. 在代码中替换原WebBrowser实例为WebView2,初始化时确保加载最新的Edge运行时:
      var webView2 = new WebView2();
      await webView2.EnsureCoreWebView2Async();
      // 绑定认证相关的导航逻辑
      
  • 设置正确的用户代理
    在EWS客户端实例中显式设置现代浏览器的UserAgent,避免被认证页面判定为过时客户端:

    var exchangeService = new ExchangeService(ExchangeVersion.Exchange2016);
    exchangeService.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0";
    
  • 安装WebView2运行时
    如果系统未安装Edge WebView2常青版运行时,WebView2控件可能无法正常加载现代内核,需安装官方提供的WebView2运行时(可在应用打包时包含运行时,或单独安装)。

  • 抓包验证请求头
    使用Fiddler等工具捕获认证流程中的HTTP请求,确认登录后的跳转请求中,UserAgent已正确设置为现代浏览器标识,排除请求头被篡改的情况。

内容的提问来源于stack exchange,提问作者FabLser

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 23:30:56