CORS(Cross-Origin Resource Sharing,跨域资源共享)是一种机制,允许服务端通过 HTTP 响应头声明允许哪些源访问资源,浏览器根据响应头决定是否放行跨域请求。

解决的核心痛点:如何在保持同源策略安全性的同时,允许受控的跨域访问?


核心命题


请求类型

类型条件行为
简单请求GET/POST/HEAD + 简单头直接发送
复杂请求其他方法/自定义头先发预检

核心响应头

响应头作用
Access-Control-Allow-Origin允许的域名(* 或具体域名)
Access-Control-Allow-Methods允许的方法
Access-Control-Allow-Headers允许的请求头
Access-Control-Allow-Credentials是否允许携带凭证
Access-Control-Max-Age预检结果缓存时间

知识图谱

  • 父级概念浏览器安全机制 — CORS 是同源策略的安全扩展
  • 相关概念
    • 同源策略 — CORS 的基础安全策略
    • CSRF — CORS 配置不当可能导致的安全问题
    • JSONP — 另一种跨域方案(已过时)→ 参见 JSONP

FAQ