首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将文件从Axios上传到Django?

如何将文件从Axios上传到Django?
EN

Stack Overflow用户
提问于 2018-03-22 17:00:35
回答 2查看 4.5K关注 0票数 8

我要从Jquery切换到react dropzone& Axios,我想上传一个文件到我的Django服务器,我没有问题在服务器上发布图像的blob url,但是我想在request.FILES下得到它,但是我得到了一个空的查询集。

代码语言:javascript
运行
复制
request.FILES : <MultiValueDict: {}>  <!--- empty
request.POST  : <QueryDict: {}>       <!--- able to get a blob url

下面是我的axios配置:

代码语言:javascript
运行
复制
const temporaryURL = URL.createObjectURL(step3.drop[0]);

var fd = new FormData();
fd.append('image', temporaryURL);

axios({
  method: 'post',
  url: SITE_DOMAIN_NAME + '/business-card/collect/',
  data: fd,
  headers: {
    "X-CSRFToken": CSRF_TOKEN, 
    "content-type": "application/x-www-form-urlencoded"
  }
}).then(function (response) {
  console.log(response)
  URL.revokeObjectURL(temporaryURL);
}).catch(function (error) {
  console.log(error)
});

我收到了一个classBasedView上的文件在邮局的请求。

我怎么上传文件?我哪里错了?

编辑

我也尝试过“应用程序/表单数据”,但没有解决这个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-23 13:51:43

问题来自于content-type,因为它使用的是"application/form-data"而不是"multipart/form-data"

票数 2
EN

Stack Overflow用户

发布于 2022-05-18 14:49:16

我的回答是,有人通过在谷歌上搜索来这里:

代码语言:javascript
运行
复制
let formData = new FormData();
formData.append('myFile', file);
formData.append('otherParam', 'myValue');

axios({
  method: 'post',
  url: 'myUrl',
  data: formData,
  headers: {
    'content-type': 'multipart/form-data'
  }
}).then(function (response) {
    // on success
}).catch(function (error) {
    // on error 
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49434403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档