日常与后台对接时,一般数据格式都是data数据传参,但偶尔也是有例外:文件上传等需要我们去使用formdata格数传参,那么应该怎么去进行接口访问呢?
因为方法比较常见,所以对formdata格式进行了个封装。
function formdata (obj = {}) {
let result = ''
for (let name of Object.keys(obj)) {
let value = obj[name];
result +=
'\r\n--XXX' +
'\r\nContent-Disposition: form-data; name=\"'+ name +'\"'+
'\r\n' +
'\r\n' + value
}
return result + '\r\n--XXX--'
}
封装以后,formdata格式的传参即可使用正常的data传参,例如,使用小程序的接口访问方式:
const params = {
"content":"wowowowowowow"
}
wx.request({
url:XXXXX,
method: 'POST',
header: {
'content-type': 'multipart/form-data; boundary=XXX'
},
data: time.formdata(params),
success: function (res) {
}
});
此时注意,header中的'content-type': 'multipart/form-data; boundary=XXX'一定要填写
data中的内容即为进行过formdata格式化后的对象传参