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

使用Microsoft Azure AD时API调用出现net::ERR_FAILED 200问题求助

解决Azure AD场景下API调用出现net::ERR_FAILED 200及CORS提示的问题

核心排查方向

1. 验证Azure AD令牌有效性

  • 用https://jwt.ms解析请求携带的Access Token,重点检查:
    • aud(受众)是否与目标API的应用ID URI完全匹配(含大小写、末尾斜杠)
    • exp(过期时间)是否未过期
    • scp(权限范围)是否包含API所需权限,且已完成管理员同意(应用权限场景)
  • 若令牌无效,核对获取令牌的流程:租户ID、客户端ID、密钥/证书是否正确,授权码/客户端凭证流程是否符合Azure AD规范

2. 重新核查CORS配置细节

  • 确认目标API的CORS设置已添加前端应用的完整源地址,包括协议、域名、端口(如https://your-frontend.com或http://localhost:3000)
  • 检查是否允许了请求所需的HTTP方法(GET/POST/PUT等)和自定义请求头(如Authorization)
  • 若用Azure App Service托管API,确认「允许凭据」选项是否开启(前端请求带withCredentials: true时必须开启)
  • 注意:Azure AD令牌通过Authorization头传递,CORS配置必须明确允许该头

3. 排查网络与代理问题

  • 检查前端环境是否有防火墙、代理拦截请求,企业内网场景下常出现修改/阻断HTTPS响应头的情况
  • 用Postman直接调用API(携带有效令牌):若能正常返回200,说明问题出在浏览器CORS验证或前端网络环境;若Postman也报错,排查API本身或Azure AD权限配置
  • 查看浏览器「网络」面板,确认响应中是否存在Access-Control-Allow-Origin等CORS相关头,若不存在则API的CORS配置未生效

4. 检查证书与HTTPS配置

  • 确认API的SSL证书有效、未过期且受浏览器信任(点击地址栏锁图标查看证书详情)
  • 自签名证书需手动导入浏览器信任;生产环境必须使用正规CA颁发的证书
  • 检查Azure App Service的TLS/SSL设置,确认已绑定正确证书,且TLS版本设置为1.2及以上

5. 核查API应用的Azure AD配置

  • 确认API应用已暴露正确的API权限,且前端应用已添加对应权限的授权
  • 检查API应用的「身份验证」设置,是否启用正确的身份提供者,且允许前端应用的重定向URI(授权码流程场景)
  • 若API部署在Azure Functions,确认函数应用的「身份验证/授权」设置已正确配置Azure AD,且未错误阻止匿名访问

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 16:57:08