cookie 和 SameSite

来源:7-1 同步和异步有何不同

慕雨晨光

2020-02-15

老师,关于在用cookie进行跨域请求的时候cookie与samesite之间的联系不是很明白,还有就是,在前端js中可以对samesite进行设置吗?

写回答

1回答

双越

2020-02-15

cookie 和 samesite 可以看下阮一峰老师的介绍,非常详细 http://www.ruanyifeng.com/blog/2019/09/cookie-samesite.html 

-----------

第一,samesite 设置的目的是为了防止第三方网站的 CSRF 攻击的,不是为了方便跨域请求的,这个目的要搞清楚。

第二,如果为了 cookie 跨域请求设置 samesite=none ,这会导致非常严重的后果,即 CSRF 攻击风险。

第三,跨域请求发送 cookie 也不是用 samesite ,而是用如下方式。当然服务端也需要设置 `Access-Control-Allow-Credentials: true`

xhr = new XMLHttpRequest();
xhr.withCredentials= true;  // 跨域请求发送 cookie
xhr.open("GET", url);
xhr.send();


1
2
慕村7130881
前后端设置了 `Access-Control-Allow-Credentials: true`, 浏览器的samesite规则就无效了吗?
2022-02-28
共2条回复

一天时间高效准备前端技术一面 匹配大厂面试要求

针对时下面试高频考点,帮助新人js面试快速通关

4694 学习 · 1681 问题

查看课程