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

Flutter基于MSAL_js的AD B2C认证失败,求本地HTTPS适配方案

问题解决与HTTPS本地配置指南

原始问题根源

你遇到的登录异常(重定向模式下Google登录界面无法输入、弹窗模式下重定向后404),核心原因是redirectUri中的URL格式错误:https:localhost:8080缺少了双斜杠,浏览器无法正确解析这个地址。将其修正为http://localhost:8080/signin-oidc后,登录流程即可正常工作。

配置HTTPS本地环境的方法

如果需要让浏览器支持HTTPS的localhost,可通过以下方式实现:

  • 使用Flutter自带HTTPS调试参数
    启动Flutter Web项目时指定SSL证书和密钥参数,可使用Flutter生成的默认证书或自定义证书:

    flutter run -d chrome --web-port 8080 --web-ssl-certificate=path/to/cert.pem --web-ssl-key=path/to/key.pem
    
  • 用mkcert生成本地可信证书

    1. 安装mkcert工具(根据操作系统选择对应安装方式)
    2. 生成本地根CA证书:
      mkcert -install
      
    3. 生成localhost的HTTPS证书:
      mkcert localhost 127.0.0.1 ::1
      
    4. 启动项目时指定生成的证书:
      flutter run -d chrome --web-port 8080 --web-ssl-certificate=localhost.pem --web-ssl-key=localhost-key.pem
      
  • 更新AD B2C应用配置
    在Azure AD B2C门户中,将应用的重定向URL更新为https://localhost:8080/signin-oidc,确保与代码中的redirectUri完全一致。

  • 代码调整
    修改代码中的redirectUri为HTTPS格式:

    ..redirectUri = "https://localhost:8080/signin-oidc"
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 16:25:16