从 Mozilla 的文档来看,CORS 的场景有以下三种:
Simple Requests有一些缺点,例如,当客户端声明时withCredentials,即使服务器拒绝,带有cookie的HTTP请求已经发送,这可能是一种攻击。
更Preflighted request安全,可以覆盖各种场景。Simple Requests即使预检请求可以满足所有要求,为什么人们还要发明?
简单的解释是“简单请求”出现在 CORS 出现之前。
XMLHTTPRequest 只允许对相同来源的请求,或者如果该请求不会引入尚不存在的安全问题,则允许对不同来源的请求。
例如,可以POST通过 HTML<form>向不同的源发出请求,但无法以编程方式读取响应。
因此,既然这已经是可能的,那么 XMLHTTPRequest 中也不存在该限制也是有道理的。
多年后,当 CORS 出现时,重要的是不破坏那些旧的跨源请求的向后兼容性。如果突然这些请求也需要 CORS 标头,则会破坏依赖它的脚本。
我写了更多关于 CORS 主题的文章,no-cors在这里: https: //evertpot.com/no-cors/了解更多背景信息。
| 归档时间: | 
 | 
| 查看次数: | 938 次 | 
| 最近记录: |