微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 如何在Laravel中使用jQuery ajax请求自动添加X-CSRF-TOKEN

如何自动添加我的Laravel应用程序的ajax请求(GET或POST)的csrf令牌,而无需手动添加到每个请求.

我的ajax请求

   $.ajax({
      type:'post',
      url: "/email/unique",
      data: { "_token": "{{ csrf_token() }}", "email": email }
      success: function(data) {
        console.log(data);
      }
   });

解决方法:

在Laravel中,csrf-token元标记的值注册为Axios HTTP库.但是,如果您不使用此库,则需要为应用程序手动配置此行为.

为此,请将令牌存储在HTML元标记

<Meta name="csrf-token" content="{{ csrf_token() }}">

然后,一旦创建了元标记,就可以指示jQuery库自动标记添加到所有请求标头中.

为此,将代码添加到Laravel 5.7的resources / js / bootstrap.js文件和Laravel 5.6及更低版本的resources / assets / js / bootstrap.js.

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('Meta[name="csrf-token"]').attr('content')
    }
});

Ajax没有csrf令牌,因为它会自动添加

$.ajax({
      type:'post',
      url: "/email/unique",
      data: { "email": email }
      success: function(data) {
        console.log(data);
    }
 }); 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐