2

我正在尝试将这个 krajee bootstrap-fileinput库与 Django python 框架一起使用。我需要csrf_token通过标头通过 ajax 将文件提交到服务器。我应该把 csrf_token 放在哪里?一般来说,我曾经在 jquery 的 ajax 方法中作为 header 传递。现在我不明白我应该在哪里包括csrf_token. 我必须投入fileinput吗?

4

1 回答 1

2

虽然这是一个非常古老的问题,但这里有答案。我在使用 bootstrap-file-upload 插件时遇到了同样的问题,我通过将 crsf 令牌添加到 as 来解决它uploadExtraData

Laravel 将令牌添加到全局可用的变量中

<script>
    window.Laravel = {"csrfToken":"PQwQZyeHaARm0gf52qzvIdl3T203FhmPT90K2bLX"};
</script>

然后,您可以在分配 bootstrap-file-upload 小部件时使用它

$(document).ready(function(){
  $("#file_uplooad").fileinput({
       uploadUrl:'/ajax/fileupload', 
       uploadExtraData:{
         _token:window.Laravel.csrfToken // we pass it here to the server
       }
    });
 });

虽然这是一个很晚的答案,但我仍然希望有人能从中受益。玩得开心!

于 2018-04-12T10:58:24.523 回答