的文件数据传送我从我们的Django的后端家伙与文档的端点,上面写着:多/ FORMDATA不与jQuery.ajax
POST到/ API/1 /照片上传/与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}
任何想法,将不胜感激。
你有没有看着http://stackoverflow.com/questions/9622901/how-to-upload-a-file-using-jquery-ajax-and-formdata和http://计算器。 com/questions/166221/how-can-i-upload-files-asynchronously -with-jquery – Rohan
@Rohan是的我上面的代码是这两个答案的混合物。除非我错过了什么。 –
我也想提出这个有据可查的问题。它没有解决我的问题,但它做得很好http://stackoverflow.com/questions/6974684/how-to-send-formdata-objects-with-ajax-requests-in-jquery –