【问题标题】:Django: Problems uploading files with AJAXDjango:使用 AJAX 上传文件时出现问题
【发布时间】:2014-06-02 10:27:21
【问题描述】:

当我尝试在 Django 中使用 Ajax 上传文件时遇到问题。我在 Javascript 上使用 FormData。但问题出在服务器端。文件作为dataURL到达request.POST,它应该到达request.FILES,但它是空的。

这是我的代码:

var form_data = new FormData(document.getElementById("form-theme-edit")),
    url = "/theme/edit/1";

$.ajax({
    "url" : url,
    "method" : "POST",
    "enctype": "multipart/form-data",
    "data" : form_data,
    "processData" : false
});

【问题讨论】:

  • Django 不应以任何不同的方式对待您的请求。浏览器对您的请求有何看法?检查 Chrome 开发者工具以了解数据是如何发送的。

标签: javascript jquery ajax django upload


【解决方案1】:

您需要将contentType 选项设置为false 以防止jQuery 在构造请求负载时尝试将FormData 对象强制转换为URL 编码字符串。此外,enctype 不是有效的 $.ajax 选项,因此您应该删除它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-11
    • 2011-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-08
    • 1970-01-01
    • 2014-01-28
    相关资源
    最近更新 更多