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

Angular调用生产环境PHP API触发CORS错误:Authorization头未获允许

解决调用PHP API时的CORS授权头错误

问题核心:你的Angular拦截器会自动为请求添加Authorization请求头,但PHP后端的CORS配置未将该头纳入允许列表,导致浏览器预请求(OPTIONS)被拦截。

直接解决方案:修改PHP代码中的Access-Control-Allow-Headers配置,添加Authorization字段:

header("Access-Control-Allow-Headers: X-API-KEY, Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Authorization");

额外优化建议:

  • 生产环境不要使用宽松的跨域配置,应指定具体的前端域名(比如将http://localhost:4200替换为你的生产前端地址)
  • 确保服务器能正确处理OPTIONS预请求,若存在问题,可在PHP代码开头添加OPTIONS请求的处理逻辑:
if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
    header("Access-Control-Allow-Origin: http://localhost:4200"); // 生产环境替换为实际域名
    header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");
    header("Access-Control-Allow-Headers: X-API-KEY, Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Authorization");
    exit;
}
  • 后续若有其他自定义请求头需要传递,需同步添加到Access-Control-Allow-Headers列表中

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 17:13:18