CORS

CORS(Cross-Origin Resource Sharing,跨源资源共享)是一个系统,它由一系列传输的 HTTP 标头组成,这些 HTTP 标头决定浏览器是否阻止前端 JavaScript 代码获取跨源请求的响应。

同源安全策略默认阻止“跨源”获取资源。但是 CORS 给了 web 服务器这样的权限,即服务器可以选择,允许跨源请求访问到它们的资源。

CORS 标头

Access-Control-Allow-Origin

指示响应的资源是否可以被给定的来源共享。

Access-Control-Allow-Credentials

指示当请求的凭证标记为 true 时,是否可以公开对该请求响应。

Access-Control-Allow-Headers

用在对预检请求的响应中,指示实际的请求中可以使用哪些 HTTP 标头。

Access-Control-Allow-Methods

指定对预检请求的响应中,哪些 HTTP 方法允许访问请求的资源。

Access-Control-Expose-Headers

通过列出标头的名称,指示哪些标头可以作为响应的一部分公开。

Access-Control-Max-Age

指示预检请求的结果能被缓存多久。

Access-Control-Request-Headers

用于发起一个预检请求,告知服务器正式请求会使用哪些 HTTP 标头。

Access-Control-Request-Method

用于发起一个预检请求,告知服务器正式请求会使用哪一种 HTTP 请求方法

Origin

指示获取资源的请求是从什么源发起的。

参见