message“: “CSRF token mismatch

"message": "CSRF token mismatch.",

  • 由于 Laravel 框架中的 CSRF 中间件检测到请求中传递的 _token 参数与 Session 中存储的 token 值不匹配,从而导致请求被拒绝。这种安全机制可以避免 CSRF 攻击,也就是通过伪造页面提交 POST 请求来实现操作。
  • 解决方案:发送 AJAX 请求时,同时将当前页面的 _token 值作为参数一同传递给后端: data: { "_token": $('input[name=_token]').val(), "data": uniqueIds },在发送请求时,需要将请求类型改为 POST。
  • $('meta[name="csrf-token"]').attr('content') 表示获取当前页面的 _token 值。需要注意的是,如果在 blade 视图文件中使用了 csrf_field 方法,那么在页面中会自动生成一个名为 _token 的隐藏输入框,并且其值就是当前页面的 CSRF token。在这种情况下,我们可以通过 $('input[name=_token]').val() 获取到 CSRF token 值。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部