CORS( Cross-Origin Resource Sharing )跨域资源共享:CORS是一种机制,依赖于浏览器的安全策略,通常为了防止恶意网站从另一个域请求资源,从而保护数据的安全
原理:通过HTTP头来允许或者拒绝某个请求
特点
- 安全性:防止恶意网站读取资源
- 灵活性:允许特定的跨域请求,同时保持对其他请求的保护
- 兼容性:实现web应用能安全地与不同域的资源进行交互
1.请求头
`Origin`: 标识请求的来源域。
`Access-Control-Request-Method`: 在预检请求中,表明实际请求所使用的方法。
`Access-Control-Request-Headers`: 在预检请求中,表明实际请求所使用的自定义头。
2.响应头 (Response Headers):
`Access-Control-Allow-Origin`: 指定允许访问资源的源。可以是具体的域,也可以是通配符 *(表示允许所有域)。
`Access-Control-Allow-Methods`: 指定允许的 HTTP 方法,如 GET, POST, PUT, DELETE 等。
`Access-Control-Allow-Headers`: 指定允许的请求头,如 Content-Type, Authorization 等。
`Access-Control-Allow-Credentials`: 指定是否允许发送 Cookie 等凭据。值为 true 表示允许。
`Access-Control-Expose-Headers`: 指定哪些头可以公开给客户端。
`Access-Control-Max-Age`: 指定浏览器在发出预检请求之前可以缓存该响应的秒数。
...大约 2 分钟