【发布时间】:2016-02-16 23:51:37
【问题描述】:
我设置了一个表单来上传图片。我之前使用的是 DropZone.js,它工作得很好,并将 CSRF 令牌与 ajax 调用一起发送。服务器端的一切都很好,但是在没有 DropZone 的情况下尝试执行此操作时,我遇到了令牌不匹配错误。
这是我的 AJAX 调用:
$(document).on('submit', ".hidden-image-upload", function(e){
e.preventDefault();
$.ajax({
url:'/project/uploadImage',
data:{
data:new FormData($("#upload_form")[0]),
},
dataType:'json',
async:false,
type:'post',
processData: false,
contentType: false,
success:function(response){
console.log(response);
},
});
});
这是 HTML:
<form method="POST" action="http://localhost/project/create" accept-charset="UTF-8" class="hidden-image-upload">
<input name="_token" type="hidden" value="5lgtt8AgbeF3lprptj8HNXVPceRhoJbqBeErBI1k">
<input class="cover-image-upload-button" name="file" type="file">
</form>
我该如何整理我的 AJAX 调用/Laravel 以协同工作?
【问题讨论】:
-
你的 CSRF 令牌在哪里?
-
试试我的答案。如果有效