axios 封装和拦截器的使用
2020-01-12 20:26
645 查看
**axios 封装 拦截器 **
可以新建一个文件夹 里面写http.js文件中的代码块
import axios from "axios" import qs from "qs" //这里用到了拦截器 在这里可以进行 操作 比如touken值的添加,判断请求类型(get/post)以对不同请求方式的操作 axios.interceptors.request.use(function (config) { return config; }, function (error) { return Promise.reject(error); }); axios.interceptors.response.use(function (response) { return response; }, function (error) { return Promise.reject(error); }); class http{ static get(url,params){ return axios.get(url,{params:params}) } static post(url,params){ return axios.post(url,qs.stringify(params)) } } export default http;
//
api.js
在这个文件里面引入http.js文件
这里统一把请求的方法都放在这个文件里面 统一在这里抛出 在用到其中的某个方法的时候引入这个文件 找到要用的方法 下面是一个例子 抛出getSwiper方法 在组件中引入 看下面
import http from "../utils/index" export function getSwiper(){ return http.get("/api/se?token=1e7f") }
组件中·
<template> <div class="switchgood"> </div> </template> <script> //引入方法 import { getSwiper } from "@/api/index.js"; export default { created(){ //引入的是一个方法 所以要加小括号 如果需要传参的话就直接在括号内 //不需要传参的形式 getSwiper().then((res)=>{ console.log(res) }) } //需要传参的形式 const params = { name:"暖心小豪", } getSwiper(params ).then((res)=>{ console.log(res) }) } methods:{ } } </script>
但是一般情况下不在created()里面请求数据 方法的一般是在methods()中请求 建议用下面这个方法,(但是上面的方法也可以用) 可以写成一下情况 我拿一个需要传参的方法为例
<template> <div class="switchgood"> </div> </template> <script> //引入方法 import { getSwiper } from "@/api/index.js"; export default { created(){ this.getData(); }, methods:{ getData(){ //需要传参的形式 const params = { name:"暖心小豪", } getSwiper(params ).then((res)=>{ console.log(res) }) } } } </script>
- 点赞 2
- 收藏
- 分享
- 文章举报
相关文章推荐
- axios封装,使用拦截器统一处理接口,超详细的教程(推荐)
- axios封装,使用拦截器统一处理接口,超详细的教程
- 使用async await 封装 axios的方法
- 封装单例模式和拦截器的使用
- OKHttp使用拦截器(Interceptor)POST与GET方法,统一封装传公共参数
- vue2使用axios post跳坑,封装成模块
- vue.js在laravel框架中的拦截器 ( axios)的使用--实现判断用户登录
- axios踩坑记录+拦截器使用+vue cli代理跨域proxy+webpack打包部署到服务器
- vue cli+axios踩坑记录+拦截器使用,代理跨域proxy(更新)
- vue cli+axios 拦截器使用
- vue cli+axios踩坑记录+拦截器使用,代理跨域proxy(更新)
- Vue.js插件axios——封装一个可以灵活使用的ajax
- Vue之axios的使用与二次封装
- vue 里面使用axios 和封装的示例代码
- Vue 前端实现登陆拦截及axios 拦截器的使用
- 解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
- VUE 之 axios 使用方法及封装
- 记 Vue +axios 使用和http请求封装
- VUE项目中封装自己使用的axios
- 使用MVP,OKHttp封装类及其拦截器,RecyclerView,SpringView,ImageLoader实现数据的多条目加载