表格数据| axios:无法从FormData获取头文件,错误:getHeaders不是一个函数

问题描述 投票:1回答:1

我试图使用form-dataaxios发布文本和文件字段,但我收到一个错误:getHeaders()不是一个函数。下面是我的submit代码,请注意我使用ReactTypescript

import * as FormData from 'form-data'
import axios from 'axios'

submit(event: React.FormEvent<HTMLFormElement>) {
  event.preventDefault()

  const { title, description, pictureFile } = this.state

  let data = new FormData()
  data.append('title', title)
  data.append('description', description)
  data.append('picture', pictureFile)

  axios.post('/api/route', data, {
    headers: data.getHeaders() // ERROR: getHeaders is not a function
  })
    .then(res => handle(res))
    .catch(err => handle(err))
}

我感兴趣的特定标题是Authorization,我可以手动设置它,但是边界是必需的所以...我最好尝试让getHeaders()函数工作。

我没有在这里得到问题,getHeaders似乎是form-data API的一部分。

请帮忙。

javascript reactjs axios form-data
1个回答
0
投票

form-data仅用于Node,如果你在浏览器上运行它,它将切换到window's版本的FormData。我在他们的代码中看到了这个。

module.exports = typeof self == 'object' ? self.FormData : window.FormData;
© www.soinside.com 2019 - 2024. All rights reserved.