2017-08-22 28 views
0

如何獲得csrfToken在Laravel 5.4.30Laravel 5.4.30:如何獲得csrfToken?

在舊版本中,有一塊這樣的代碼:

<script> 
     window.Laravel = <?php echo json_encode([ 
      'csrfToken' => csrf_token(), 
     ]); ?> 
    </script> 

所以,我能在JavaScript得到csrfToken這樣的:

Laravel.csrfToken 

現在我更新laravel到5.4.30時,上面的代碼已被移動,並且在bootstarp.js中,有一段代碼是這樣的:

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

問題:
如何在JavaScript中獲取csrfToken

+0

你可以使用Laravel Helper函數'csrf_token()' –

回答

1
{{ csrf_token() }} 
or 
{{ csrf_field() }} 
+0

我會在javascript中使用它,而不是php – zwl1619

+1

https://stackoverflow.com/questions/42383026/how-to-setup-csrf-in-javascript-for -laravel 請按照這個網址。我認爲這會幫助你 –

0

,如果你需要它的Ajax調用,你可以試試這個:

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

,並在你的頭上刀片:

<meta name="csrf-token" content="{!! Session::token() !!}"> 
2

您應該TR這樣的:

1.用令牌添加標籤到刀片佈局:

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

2.設置Ajax請求:

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

希望這對你的工作!

+0

@ zwl1619很高興幫助,如果我的答案是你的解決方案,那麼請接受我的答案 –