jquery 如何在Laravel的外部js文件中包含csrf_token()?

e0bqpujr  于 2023-10-17  发布在  jQuery
关注(0)|答案(2)|浏览(86)

最初,我使用<script>标记在HTML页面中编写所有JavaScript代码。
JavaScript中的jQuery的post调用是这样的。

$.post('store',{'_token':'{{csrf_token()}}'}, function(data){ /*a bunch of code*/ });

代码运行良好。但是,后来我把我所有的脚本到一个外部的JS文件。代码不再起作用了。
{{csrf_token()}}有问题,错误是
compiled.php中的TokenMismatchException
如果我想使用Laravel外部js文件,我应该怎么做?

g9icjywg

g9icjywg1#

1.将带有标记的<meta>标记添加到刀片式服务器布局:

<meta name="_token" content="{{ csrf_token() }}">

1.安装程序请求:

$(function() {
  $.ajaxSetup({
    headers: {
      'X-CSRF-Token': $('meta[name="_token"]').attr('content')
    }
  });
});

现在您可以使用$.post(),而无需每次都提供_token

x0fgdtte

x0fgdtte2#

这对我很有效:

var csrf = document.querySelector('meta[name="csrf-token"]').content;

相关问题