服务端响应头设置 Access-Control-Allow-Origin 貌似只是告诉客户端一个白名单,让客户端自觉建立连接,那如果客户端不自觉呢?服务端是不是还需要对 origin 进行判断来决定是否拒绝访问?那 Access-Control-Allow-Origin 的意义何在?

举报· 231 次点击
登录 注册 站外分享
17 条回复  
lisxour 小成 2024-11-9 15:42:38
这些头绝大部分情况下是针对于浏览器的
Quarter 小成 2024-11-9 15:43:47
这个本来就是双端一起努力的结果,所以才好推广官方浏览器,不要用不知道哪里下载的浏览器,以及,如果你自己开发一个浏览器,其实可以绕过很多安全策略的,比如 ssl 证书检测、跨域策略等等
DOLLOR 小成 2024-11-9 15:49:03
1 、标准的 web 浏览器是自觉的,不自觉的浏览器没人敢用。 2 、非必要,但可以。取决于你的网站对安全的需求。 3 、意义是区分资源所有者。 web 是利用域名来区分服务提供商的。 自己网站只能访问自己的接口,自己的接口只能被自己的网站访问,是天经地义的事情。
Puteulanus 小成 2024-11-9 15:51:25
对 origin 进行判断也没用,后端安全的一个原则就是客户端发过来的所有东西都可能是不可信的 cors 头不是用来保证后端安全的,是给后端一个操纵前端(浏览器)行为的 API
codehz 初学 2024-11-9 15:57:11
其实这些限制是保护普通用户的,不然人家在钓鱼网站里弄几个请求(同时带第三方网站的 cookie )把你钱转走了就出大问题了,客户端的话,系统也直接不让你访问其他应用的数据
Akitora 小成 2024-11-9 16:04:19
这是给标准浏览器看的
ShineyWang 小成 2024-11-9 16:46:20
君子协定 正规浏览器都会有 cors 报错 postman 这种就不会管 所以假如你信任你的电脑,信任你安装的浏览器 那这个就是有效的
huijiewei 小成 2024-11-9 16:50:28
不自觉的客户端谁敢用啊。真是的
Y25tIGxpdmlk 小成 2024-11-9 16:59:44
那是告诉正规的浏览器的,正规浏览器都会遵守这个规定,不然用户数据就得不到保障了。 chrome 也可以用--disable-web-security 这个命令关闭安全设置。 当然你自己写的各种 py ,或者其他脚本,可以随便忽视这个头。
12下一页
返回顶部