addAppVersion(formdata: any, file: any) {
const data = new FormData();
data.append('appfile', file);
data.append('appVersion', JSON.stringify(formdata));
//Object.entries(formdata).forEach((arr: [string,any]) => {data.append(arr[0], arr[1]);})
return new Promise((resolve: Function,reject: Function) => {
axios({
url:'/app/versionManager/addAppVersion',
method:'post',
headers: {
'Content-Type': 'multipart/form-data',
},
data: data
}).then((res: any) => {
resolve(res.data)
}).catch((err: any) => {
reject(err)
});
})
formData.append(name, value) 表单的值。
是 USVString
或 Blob
(包括子类型,如 File
)。所以上述的date需要被JSON.stringify,才能存入FormData字符串。我这里想在请求前进行appVersion
值的反序列化,但是尝试使用transformRequest
和拦截器都失败了。
这样请求的参数appVersion是一个JSON字符串,能不能做到直接传递一个对象参数呢?或者用其他方式传递file?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…