Chrome 51版本后91版本前
Chrome 51 版本开始,浏览器的 Cookie 新增加了一个SameSite属性,用来防止 CSRF 攻击和用户追踪。SameSite 可以设置三个值(Strict、Lax、None)。
详见阮一峰的Cookie 的 SameSite 属性
由此可见,在开发过程中运行本地项目调试接口,如果某些接口使用cookie作为校验,会涉及到cookie跨域丢失问题。对于前端来说,调试项目时想要实现浏览器跨域共享cookie,必须设置浏览器的实验属性。
- 在Chrome 地址栏输入
chrome://flags
打开Chrome 实验。 - 通过设置
SameSite by default cookies
、Cookies without SameSite must be secure
来实现SameSite和Secure的设置。
3. 重启浏览器
Chrome 91版本后
2021年5月27日发布的Chrome 91版本后,Chrome实验属性关于SameSite by default cookies
、Cookies without SameSite must be secure
的设置消失了,一直查询不到解决办法,应该是 Chromium 升级了,使用 Chromium 的浏览器都无法设置了,最后卸载了最新的Chrome ,找到一个网址下载安装了89版本前的Chrome 浏览器。
当然用火狐是不存在这个问题的,不过我不太习惯火狐的使用。在不久后,估计火狐也会进行相关的升级工作。
大神们如果有别的更好的解决方案欢迎留言~~~
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END