前端知库

什么是跨域?CORS 为什么需要服务端配合?

明确同源的判定方式,以及预检请求的作用。

参考答案

源由协议、主机与端口共同决定。同源策略限制脚本读取某些跨源资源;CORS 通过响应头声明允许哪些源读取响应。

不符合简单请求条件的跨源请求,通常先发送 OPTIONS 预检,询问服务端是否允许目标方法和请求头。带凭据的请求需要更严格的响应配置,允许源不能简单写为通配符。

前端设置 mode: "no-cors" 通常只会得到不可读取主体的不透明响应,不能作为读取跨域接口数据的解决方案。开发代理与服务端正确配置是不同部署场景下的办法。