krajee bootstrap-fileinput 与 django 框架

krajee bootstrap-fileinput with django framework

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

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

解决了这个问题

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

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

然后您可以在分配 bootstrap-文件上传小部件时使用它

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

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