我有一个Django后端人员的 endpoints ,文档内容如下:
POST到/ api / 1 / photo-uploads /使用enctype =“multipart / form-data”,文件名为“files []” .
我一直在尝试使用jquery的AJAX方法使用formData发送上传的文件 . 我继续收到错误,表明文件未发送 . 当我查看有效载荷时,我看到了 .
undefined
------WebKitFormBoundary9AzM2HQPcyWLAgyR
Content-Disposition: form-data; name="file"; filename="auzLyrW.jpg"
Content-Type: image/jpeg
这并不一定意味着它没有发送,但肯定没有发布位置 . 我没有任何关于文件上传的验证 .
var formData = new FormData();
formData.append('file', $('#file-upload').get(0).files[0]);
$.ajax({
url: '/api/1/photo-uploads/',
type: 'POST',
data: formData,
cache: false,
contentType: false,
processData: false,
});
当我在console.log formData
时,它只显示原型方法,如 .append
. 所以我发送的数据超出了检查有效负载的范围 . 我可以记录 $('#file-upload').get(0).files[0]
但我只看到文件本身的详细信息 . 因为我在本地测试它,上传位置应该像localhost:8000 / .
后端人员的印象是它正在做的事情 . 当我做一个简单的表单帖子时它工作正常 . 我已经尝试了一些插件和基本方法,并且都生成了 400 {"message": "No photos supplied.", "success": false}
任何想法,将不胜感激 .
1 回答
该文档要求将其称为
files[]
. 发送的是file
.formData.append('files[]', $('#file-upload').get(0).files[0]);