今天要实现一个上传文件的功能,后端的传参要求为二进制(不是json)。
解决办法有两种:
一、修改请求头
import request from '@/utils/http'
export function UpLoadApi(params) {
return request({
url: '/oss/object',
method: 'post',
headers: { "Content-Type": "multipart/form-data" }, // 在这里修改请求头
params: data
})
}
二、FormData()方法
let format = new FormData();
format.append("object", data.addForm.fileList[0].raw);
format.append("appId", data.selectValue);
format.append("objectId", data.addForm.objectId);
format.append("prefix", data.addForm.prefix);
UpLoadApi(format).then((res) => {
if (res.code === 200) {
ElMessage({
message: "提交成功",
type: "success",
});
cancel();
}
});
我用的是方法二,二进制传参成功
二进制参数