Indicate whether to send a cookie in a cross-site request by specifying its SameSite attribute

Indicate whether to send a cookie in a cross-site request by specifying its SameSite attribute

原因:在这里插入图片描述

分析:

Google 在2020年2月4号发布的 Chrome 80 版本(schedule:https://www.chromestatus.com/features/schedule)中默认屏蔽所有第三方 Cookie,即默认为所有 Cookie 加上 SameSite=Lax 属性(https://www.chromestatus.com/feature/5088147346030592),并且拒绝非Secure的Cookie设为 SameSite=None(https://www.chromestatus.com/feature/5633521622188032)
SameSite的作用就是:防止跨域传送cookie,从而防止 CSRF 攻击和用户追踪,此举是为了从源头屏蔽 CSRF 漏洞。
关于 SameSite 属性的介绍,可参考阮一峰的《Cookie 的 SameSite 属性》。
原文链接:https://blog.csdn.net/yhyc812/article/details/108623844

CSRF

  • CSRF全拼为Cross Site Request Forgery,译为跨站请求伪造。
  • CSRF指攻击者盗用了你的身份,以你的名义发送恶意请求。
  • 简单理解别人拿着你的cookie去登陆网站干坏事

解决

  • 我报错的具体原因就是:我在http://localhost:3000/msite跨域请求了http://172.20.91.81:3000/sockjs-node/info?t=1634957626945,在http://localhost:3000/msite网站跨域传送了cookie(connect.sid 172.20.91.81)
  • 而/sockjs-node/info?t=1634957626945我并没有去请求它啊?
  • 然后百度发现:vue-cli4在运行npm run serve 之后 network 里面一直调研一个接口:http://localhost:3000/sockjs-node/info?t=1634957626945
  • 解决:
  1. 找到/node_modules/sockjs-client/dist/sockjs.js
  2. 找到代码的 1605行
// An highlighted block
	try {
 	 //  self.xhr.send(payload); 把这里注掉
	  } catch (e) {
	    self.emit('finish', 0, '');
	    self._cleanup(false);
	  }
  1. 点击刷新,报错消失
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值