QQ咨询 官方微信

添加微信好友

官方小程序

百度小程序

微信小程序

头条小程序

关于我们

vue教程

axios请求封装

 shitouadmin  2023-06-26 22:12:34
使用axios之前需要先安装一下
  1. $ npm install axios 

使用之前需要先了解axios的基本知识:
1. Axios基础用法(get、post、put 等请求方法)
先介绍一下,Axios常用的几种请求方法有哪些:get、post、put、patch、delete
get:(一般用于)获取数据
post:提交数据(表单提交+文件上传)
put:更新(或编辑)数据(所有数据推送到后端(或服务端))
patch:更新数据(只将修改的数据推送到后端)
delete:删除数据
题外话,一般公司在实际开发项目过程中:
(1)post:一般用于新建
(2)put:一般用于更新(适合数据量比较少的更新)
(3)patch:一般用于数据量比较大;假如一个表单的数据量很大,有很多项,使用put的话,全部数据推送一次是比较耗性能的,这个时候可以考虑用patch,只将修改的数据推送到后端

封装:
(1)在src下创建utils文件夹,并创建request.js,添加代码:

  1. import axios from 'axios' 
  2. //接口主域名 
  3. const baseURL = 'http://localhost/phpcmsApi5'
  4.  
  5. //利用axios.create()创建axios实例,并配置基地址 
  6. let Request = axios.create({ 
  7.     baseURL: baseURL, 
  8.     timeout:3000, 
  9.     headers: { 
  10.         'Content-Type''application/json;charset=UTF-8'
  11.     }, 
  12.     params:{ 
  13.         'aid': 1 
  14.     }, 
  15.     method:'GET' 
  16. }) 
  17.  
  18. //请求拦截器 
  19. Request.interceptors.request.use(config => { 
  20.     return config 
  21. },err=>{ 
  22.     return Promise.reject(err); 
  23. }) 
  24.  
  25. //响应拦截器 
  26. Request.interceptors.response.use(resp => { 
  27.     //检测到401(未登录)跳转到登录页面 
  28.     if (resp.data.resultCode === 401) { 
  29.         window.location.href = '/login' 
  30.     } 
  31.     return resp 
  32. },err=>{ 
  33.     return Promise.reject(err); 
  34. }) 
  35.  
  36. //模块导出 
  37. export default function apiRequest(options){ 
  38.     // interceptors(instance) 
  39.     return Request(options) 
  40.  

(2)为了方便全局调用,可以挂载在vue下,在main.js添加代码:

  1. import apiRequest from '../utils/request.js' 
  2. Vue.prototype.$apiRequest = apiRequest; 

这样都可以通过this.$apiRequest的方式请求接口了

(3)请求方式:

  1. this.$apiRequest({ 
  2.     'url''api.php?op=api&action=lists'
  3.     'method''POST'
  4.     'params': { 
  5.          'catid': 6, 
  6.          'num': 2, 
  7.     } 
  8. }).then(res => { 
  9.      console.log(res) 
  10. }); 


 

¥ 打赏
×
如果您觉得文章帮助了您就打赏一下吧
非常感谢你的打赏,我们将继续分享更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

本文《axios请求封装》发布于石头博客文章,作者:shitouadmin,如若转载,请注明出处:https://www.pweb123.com/frame/vue/965.html,否则禁止转载,谢谢配合!

文章点评

我来说两句 已有0条评论
点击图片更换

添加微信好友

添加微信好友

微信小程序

百度小程序