react axios 请求 传参为 FormData 目前本人用过两种方法
方法一 :
import axios from 'axios'
var formData = new FormData()
let msg = {'username':'admin','password':'admin'}
for (const key in msg) {
formData.append(key,msg[key])
}
axios({
method: 'POST',
url: '请求路径',
data: formData
}).then(res => {
console.log(res)
})
方法二 :
(1) 新建一个 http.js 文件
import axios from 'axios'
import qs from 'qs'
let http = {
post: '',
get: ''
}
http.post = function(api,data) {
let params = qs.stringify(data)
return new Promise((resolve, reject) => {
axios.post(api,params).then(res => {
resolve(res)
})
})
}
http.get = function(api,data) {
let params = qs.stringify(data)
return new Promise((resolve, reject) => {
axios.get(api,params).then(res => {
resolve(res)
})
})
}
export default http;
(2) 在需要获取数据的页面
async login() {
const res = await http.post('路径',{'username':'admin','password':'admin'})
console.log(res)
}
此方法只封装了 post 和 get 两个方法 , 如用到 delete 等请求方式可试着封装成一个方法