function createFormData(values = {}, boundary = "") {
let result = "";
for (let i in values) {
result += `\r\n--${boundary}`;
result += `\r\nContent-Disposition: form-data; name="${i}"`;
result += "\r\n";
result += `\r\n${values[i]}`;
}
// 如果obj不为空,则最后一行加上boundary
if (result) {
result += `\r\n--${boundary}`;
}
return result;
}
调用接口传参数
// 生成一个boundary字符串
const boundary = `----FooBar${new Date().getTime()}`;
const formData = createFormData(values, boundary);
const { data } = await Taro.request({
url: "****",
method: "POST",
data: formData,
header: {
Accept: "application/json",
"Content-Type": `multipart/form-data; boundary=${boundary}`
}
});