Javascript Reactjs Nodejs文件通过axios上传ftp
我正在尝试使用ftp上的React Dropzone上传文件,前端是React JS+AXIOS,后端是Nodejs+connect multiparty。 问题是,当我使用AXIOS通过前端发送文件时,我无法在服务器上获得请求中的文件。 我使用react axios上传文件的代码是Javascript Reactjs Nodejs文件通过axios上传ftp,javascript,node.js,reactjs,ftp,axios,Javascript,Node.js,Reactjs,Ftp,Axios,我正在尝试使用ftp上的React Dropzone上传文件,前端是React JS+AXIOS,后端是Nodejs+connect multiparty。 问题是,当我使用AXIOS通过前端发送文件时,我无法在服务器上获得请求中的文件。 我使用react axios上传文件的代码是 let data = new FormData() data.append('file', file) var setting = { method: 'post', url: 'my-se
let data = new FormData()
data.append('file', file)
var setting = {
method: 'post',
url: 'my-server-url',
data:data,
headers: {
'Content-Type': 'multipart/form-data'
},
}
var response = axios(setting).then(response => { return response.data })
.catch(response => response = {
success: 500,
message: "Your submission could not be completed. Please Try Again!",
data: ""
});
使用“邮递员”时,一切正常。服务器端api正在工作。只有客户端请求代码有问题
任何帮助 这是一个新手犯的错误,可能是因为您不了解multipart的工作方式。要使客户端代码正常工作,即将表单数据发送回后端,您需要:
- 删除标题并让浏览器根据您的数据类型为您选择标题
- 或者在使用“内容类型”:“多部分/表单数据”时,向其添加边界
'Content-Type': 'multipart/form-data; boundary=----WebKitFormBoundaryABCDEFGHIJKLMNOPQRSTUVWXYZ'
只需执行以下操作即可解决问题,因为浏览器将处理所需的标题
axios.post('your-server-url', data).then(....)