Axios基础

axios 是一个专注于网络请求的库,基本语法如下

axios({
method:'post/get',
url:'xxx'
//url 中带的参数即 get 传递的数据
params:{},
//post 传递的参数即请求体参数
data:{},
}).then((result)=>{
//.then 用来指定请求成功后的回调函数
})

promise 对象可以调用 then 方法,axios 返回的真实数据在 xxx.data 下

如果调用某个方法返回的是 promise 方法,前面可以加 await

await 方法只能用用在被 async 修饰的方法中

使用结构赋值把请求的大对象的 data 属性(即真实的数据)解构出来,再进行重命名,最后通过重命名的对象的 data 中拿出数据

解构赋值可以使用:进行重命名

const {data:res} = await axios({
method:'post/get',
url:'xxx'
//url 中带的参数即 get 传递的数据
params:{},
//post 传递的参数即请求体参数
data:{},
});
consolr.log(res.data);
// axious.get
const {data:res} = await axios.get('url',{
params:{
//参数
}
})
// axious.post
const {data:res} = await axios.post('url',{params})

简化 axios 请求

在 vue 的原型上挂载 axios,后续组件需要使用则不需要导入 axios,直接调用 this.$http,方法是在 main 方法内导入 axios 并使用原型挂载,并将请求路径进行全局配置

//在 main.js 导入 axios
import axios from 'axios'
//配置根路径
axios.defaults.baseURL = '根路径'
//把 axios 挂载到.vue 原型
Vue.prototype.$http = axios
// 此方法的缺点是无法实现 API 接口的复用
// 封装 request.js
import axios from 'axios'
const request = axios.create({
baseURL: 'https://www.escook.cn'
})
export default request
// 封装发请求的函数
import request from '@/utils/request.js'
// 按需导出 api
export const getArticleAPI = function (data) {
return request.get('/articles', {
params: {
data
}
})
}
// 在需要使用 api 的组件内按需导入
import { getArticleAPI } from '@/api/articleAPI.JS'
posted @   有些东西学不会  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
// 侧边栏目录 // https://blog-static.cnblogs.com/files/douzujun/marvin.nav.my1502.css
点击右上角即可分享
微信分享提示