首先使用npm安装axios
接着需要使用的组件中引入:
import axios from ‘axios’
最后在methods(){}中使用
GET请求
axios.get(‘/user?ID=12345’)
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
// 功能同上
axios.get(‘/user’, {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
// 想使用异步/等待吗?将“asycc”关键字添加到外部函数/方法中
async function getUser() {
try {
const response = await axios.get(‘/user?ID=12345’);
console.log(response);
} catch (error) {
console.error(error);
}
}
POST请求
axios.post(‘/user’, {
firstName: ‘Fred’,
lastName: ‘Flintstone’
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
完整版:
axios({
url: ‘/user’,
method: ‘post’,
data: {
firstName: ‘Fred’,
lastName: ‘Flintstone’
},
transformRequest: [function (data) {
// Do whatever you want to transform the data
let ret = ‘’
for (let it in data) {
ret += encodeURIComponent(it) + ‘=’ + encodeURIComponent(data[it]) + ‘&’
}
return ret
}],
headers: {
‘Content-Type’: ‘application/x-www-form-urlencoded’
}
})
执行多个并发请求
function getUserAccount() {
return axios.get(‘/user/12345’);
}
function getUserPermissions() {
return axios.get(‘/user/12345/permissions’);
}
axios.all([getUserAccount(), getUserPermissions()])
.then(axios.spread(function (acct, perms) {
// Both requests are now complete
}));
项目中使用:
let json = [],
me = this;
;
json.chinese = this.temp.title
json.english = this.temp.author
json.project = this.currentProject
console.log(json)
axios({
url: ‘http://39.105.105.188:7010/form/{projectName}/addFields’,
method: ‘post’,
data: [
{
“chinese”: json.chinese,
“english”: json.english,
“id”: 0,
“project”: json.project
}
],
headers: {
‘Content-Type’: ‘application/json’, /* json格式数据 */
“Authorization”: 'Bearer ’ + me.$store.state.user.token
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});