使用AXIOS将本地POST表单数据与其中的对象和文件进行反应 [英] react native post form data with object and file in it using axios
本文介绍了使用AXIOS将本地POST表单数据与其中的对象和文件进行反应的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我想上传 对象作为数据 和作为便笺的文件 使用AXIOS访问API
数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">uploadToServer= () => {
const file =this.state.photo
let data2 ={sale_id:1,
note_type_id:4,
description:"test",
note_content_item:" hi from broker hub"
}
let data = new FormData()
data.append('data[sale_id]', '1')
data.append('data[note_type_id]', '4')
data.append('data[description]', "test")
data.append('data[note_content_item]', "test")
console.log(data)
axios({
url: api',
method: 'POST',
data: data,
headers: {
'Content-Type' : 'multipart/form-data',
'Authorization':'Basic YnJva2VyOmJyb2tlcl8xMjM='
}
})
.then(resp => console.log(resp.data.response))
.catch(error => console.error(error));
}
首先,我尝试在没有备注的情况下处理数据,我可以用邮递员来做
但我的代码出现错误
消息:"无法保存文件" 响应代码:10 仅当我将密钥从Data更改为其他密钥时,才会出现此错误推荐答案
您没有正确构建FormData
,请尝试此操作:
let data = {sale_id:1,
note_type_id:4,
description:"test",
note_content_item:" hi from broker hub"
}
const formData = new FormData();
formData.append('data', JSON.stringify(data));
formData.append('Note', {
uri: "file://" //Your Image File Path
type: 'image/jpeg',
name: "imagename.jpg",
});
axios({
url : api,
method : 'POST',
data : formData,
headers: {
Accept: 'application/json',
'Content-Type': 'multipart/form-data',
'Authorization':'Basic YnJva2VyOmJyb2tlcl8xMjM='
}
})
.then(function (response) {
console.log("response :", response);
})
.catch(function (error) {
console.log("error from image :");
})
这篇关于使用AXIOS将本地POST表单数据与其中的对象和文件进行反应的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文