位置: IT常识 - 正文

【vue2】axios请求与axios拦截器的使用详解(vue-axios详细介绍)

编辑:rootadmin
【vue2】axios请求与axios拦截器的使用详解

推荐整理分享【vue2】axios请求与axios拦截器的使用详解(vue-axios详细介绍),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue配置axios请求地址,vue axios 请求,vueajax请求,vueajax请求的五个步骤,vueajax请求,vue-axios详细介绍,vueajax请求的五个步骤,vueajax请求,内容如对您有帮助,希望把文章链接给更多的朋友!

🥳博       主:初映CY的前说(前端领域)

🌞个人信条:想要变成得到,中间还有做到!

🤘本文核心:当我们在路由跳转前与后我们可实现触发的操作

【前言】ajax是一种在javaScript代码中发请求并获取响应数据的技术,我们的axios是一个别人封装好的、用来发ajax请求的工具。那么我们发送请求与响应数据可以用来做什么呢?这样做有什么好处呢?可以实现——当我们不刷新页面的情况下,我们从服务器获取请求的数据,以局部更新我们定点的数据而不是我们整个页面的刷新。

目录

一、axios

1.1axios的请求方式

1.2请求方式的传参特点

1.3【经典面试题】get与post请求的区别

二、axios拦截器

2.1axios拦截器介绍

2.2axios拦截器使用

2.3总结axios拦截器

一、axios1.1axios的请求方式1.get

该请求方式常用于处理查询操作,比如我们在浏览器上搜索基本上用的使get请求

2.post

该请求常用于我们处理新增操作,比如我们对我们页面中的登录时进行增加数据进服务器

3.put

该请求常用于我们处理全部更新操作,比如我们对我们页面中的form表单进行全部修改

4.patch

该请求常用于我们处理局部更新操作,比如我们对我们页面中的form表单进行全部修改

5.delete

该请求常用于我们处理删除数据操作,处理页面上需要删除的信息常需要使用该请求方式

1.2请求方式的传参特点get常用于请求行传参post 、put、patch常用于请求体传参delete常用于请求行/请求参数传参1.3【经典面试题】get与post请求的区别

1.位置不同。我们的get是写在请求行中,post则是写在请求体中。也就是一个可以在地址栏可以看到我们的信息(get),一个需要按下F12在调试里面看我们传递的信息

2.速度不同。使用get因为有大小限制的原因,因此数据传输的速度长比post请求快

3.大小不同。get写在地址栏上面,因此有长度的限制,最大长度为2k左右,而我们的post写在请求体中没有大小的限制

4.安全性不同。get的参数可以直接看到,post参数需要按下F12来查看

二、axios拦截器2.1axios拦截器介绍

【授人以鱼不如授人以渔】我们通过官网出的文件来进行一个讲解:

请求拦截器:处理我们在发送请求之前需要经过的回调函数

相应拦截器:服务器响应之后返回给我们之前会被执行的回调函数

官网指南:拦截器 | Axios 中文文档 | Axios 中文网 (axios-http.cn)

下图为上述超链接打开之后所看到的页面:

 我们将上述代码copy下来(这一大段代码不需要背下来,到了工作当中也是直接去axios官方中直接copy下来我们进行应用即可呦)

【vue2】axios请求与axios拦截器的使用详解(vue-axios详细介绍)

1.便于封装操作,我们常会建立一个专门的文件来写下我们的拦截器同基地址作为第一次封装。

【vue2小知识】实现axios的二次封装_初映CY的前说的博客

// 添加请求拦截器axios.interceptors.request.use( function (config) { // 在发送请求之前做些什么 return config }, function (error) { // 对请求错误做些什么 return Promise.reject(error) })// 添加响应拦截器axios.interceptors.response.use( function (response) { // 2xx 范围内的状态码都会触发该函数。 // 对响应数据做点什么 return response }, function (error) { // 超出 2xx 范围的状态码都会触发该函数。 // 对响应错误做点什么 return Promise.reject(error) })

我们将官网的这段代码获取下来了,兄弟姐妹们有没有发现官方甚至连注释都给我们写好了,很清晰明了的介绍了axios拦截器的用法,可知:

axios是我们用于发送Ajax请求之前以及我们在发送请求之后会执行的一个回调函数

2.2axios拦截器使用

1.在项目中先下载下我们的axios

至此我们知道了axiox的基本概念,那怎么在vue项目中引用?使用npm i axios 或者这 yarn add axios 将我们的axios下载下来(使用指南:npm的使用介绍)

2.项目中进行引入(与拦截器在同一个js文件)

import axios from 'axios'

 3.设置基地址,并且导入request

const request = axios.create({ baseURL: 'http://ajax-api.itheima.net/api', timeout: 5000 // 超过5s请求停止})export default request

4.根据接口文档写axios请求

import request from '@/utils/request'export function homeAddress (pname, cname) { return request({ url: '/area', method: 'GET', params: { pname: pname, cname: cname } })}

 5.页面中进行调用

<template> <div class="div1"> <button @click="getHomeAddress('江西省', '九江市')">点我获取地址</button> </div></template><script>import { homeAddress } from './api/address'export default { methods: { async getHomeAddress (pname, cname) { console.log(pname, cname) const res = await homeAddress(pname, cname) console.log('地址数据为:', res) } }}</script><style lang="less">.div1 { background-color: teal; button { height: 50px; display: block; margin: 30px auto; }}</style>

 6.点击按钮发送请求

 7.配置axios拦截器

7.1请求拦截器

在发送请求之前会执行的一个回调,常用于将token添加进请求头的Authorization中。

注意我们的axios实例是request因此从官网cv下来我们需要将axios改为request

// 添加请求拦截器request.interceptors.request.use( function (config) { // 在发送请求之前做些什么 console.log(config, 'config') console.log('嘿!我是在请求之前就执行的') return config // 发给服务器的信息 }, function (error) { // 对请求错误做些什么 return Promise.reject(error) })

 7.2响应拦截器

从服务器获取到了数据返回的时候先执行一个回调函数,常用于做状态码判断与脱壳处理

// 添加响应拦截器request.interceptors.response.use( function (response) { // 2xx 范围内的状态码都会触发该函数。 // 对响应数据做点什么 console.log(response, 'response') console.log('嘿!我是在请求之后就执行的,response为我们请求相应的结果') return response.data.data }, function (error) { // 超出 2xx 范围的状态码都会触发该函数。 // 对响应错误做点什么 return Promise.reject(error) })

可以看到我们最终响应的值是我们response处理过的值

2.3总结axios拦截器

请求拦截器:在发送请求之前会执行的回调函数

响应拦截器:发送请求后服务器返回前执行的回调函数

——期待大家的关注与支持! 你的肯定是我更新的最大动力——
本文链接地址:https://www.jiuchutong.com/zhishi/299479.html 转载请保留说明!

上一篇:手把手教你基于HTML、CSS搭建我的相册(下)(基于什么意思)

下一篇:要点初见:开源AI绘画工具Stable Diffusion代码分析(文本转图像)、论文介绍(上)(开源原则)

  • 2017年微信公众号发展趋势(2018年公众号)

    2017年微信公众号发展趋势(2018年公众号)

  • 淘宝app如何删除评价(怎么删除淘宝app)

    淘宝app如何删除评价(怎么删除淘宝app)

  • 苹果xr可以更新系统吗(苹果XR可以更新16.2)

    苹果xr可以更新系统吗(苹果XR可以更新16.2)

  • vivo开了OTG读不出来(vivo开了OTG读不出来u盘)

    vivo开了OTG读不出来(vivo开了OTG读不出来u盘)

  • vivo手机死机重启不了(vivo手机死机重启方法)

    vivo手机死机重启不了(vivo手机死机重启方法)

  • qq闺蜜关系别人看得到吗(qq闺蜜关系别人知道吗)

    qq闺蜜关系别人看得到吗(qq闺蜜关系别人知道吗)

  • 联通卡2g没信号怎么办(联通2g没信号还会再有吗)

    联通卡2g没信号怎么办(联通2g没信号还会再有吗)

  • 快手注销第一项不通过(快手注销账号最后一步)

    快手注销第一项不通过(快手注销账号最后一步)

  • b站视频循环播放怎么设置(b站视频循环播放算播放次数吗)

    b站视频循环播放怎么设置(b站视频循环播放算播放次数吗)

  • 为什么qq资料验证明明对了还是有误(为什么qq资料验证老是失败)

    为什么qq资料验证明明对了还是有误(为什么qq资料验证老是失败)

  • soul没有群聊功能怎么办(为什么我的soul没有聊天室)

    soul没有群聊功能怎么办(为什么我的soul没有聊天室)

  • 50px等于多少cm(55px是多少厘米)

    50px等于多少cm(55px是多少厘米)

  • 红米7a是不是全面屏(红米7a是安卓几)

    红米7a是不是全面屏(红米7a是安卓几)

  • qq微云是干嘛的(qq微云好用吗)

    qq微云是干嘛的(qq微云好用吗)

  • word表格加粗一条线(word文档表格加粗)

    word表格加粗一条线(word文档表格加粗)

  • 苹果手机怎么改微信提示音(苹果手机怎么改时间和日期)

    苹果手机怎么改微信提示音(苹果手机怎么改时间和日期)

  • 乐视手机怎么提高音量(乐视手机使用方法)

    乐视手机怎么提高音量(乐视手机使用方法)

  • oppo手机呼吸灯在哪设置(oppo手机呼吸灯设置在哪里设置)

    oppo手机呼吸灯在哪设置(oppo手机呼吸灯设置在哪里设置)

  • 荣耀v20怎样锁定后台(华为荣耀v20bl锁)

    荣耀v20怎样锁定后台(华为荣耀v20bl锁)

  • 湘潭扫码乘车怎么使用(湘潭乘车码怎么用)

    湘潭扫码乘车怎么使用(湘潭乘车码怎么用)

  • 手机上的软件怎么保存到云盘(手机上的软件怎么传到ipad上)

    手机上的软件怎么保存到云盘(手机上的软件怎么传到ipad上)

  • 万字长文带你走进MySql优化(系统层面优化、软件层面优化、SQL层面优化)(万字短文)

    万字长文带你走进MySql优化(系统层面优化、软件层面优化、SQL层面优化)(万字短文)

  • phpcms怎么添加栏目(phpcms 标签)

    phpcms怎么添加栏目(phpcms 标签)

  • 织梦栏目有缓存导致刚发布的文章条数和分页不同步处理方法(织梦安装完要删除哪个文件)

    织梦栏目有缓存导致刚发布的文章条数和分页不同步处理方法(织梦安装完要删除哪个文件)

  • 发票开具与小票的关系是怎样的
  • 金税盘维护费发票需要认证吗
  • 公司出租房营业税税率是多少
  • 对方开给我的专票遗失了,让我上传发票
  • 子公司是长期股权投资吗
  • 食堂临聘人员的管理、考核
  • 公司期货收入怎么交税
  • 留抵进项税额
  • 转贴现视为贷款银行如何进行账务处理?
  • 应缴纳的所得税税额
  • 合同和付款单位不一致发票应该开给谁
  • 增值税税负低如何解释
  • 高新技术企业注销后退回补贴
  • 宣传费开票属于什么费用
  • 税务局怎么知道你的收入
  • 一般纳税人怎么查询
  • 备用金发票冲抵
  • 购买原材料并作会计分录
  • 混合销售行为的名词解释
  • 增值税发票自查报告
  • 企业收到税前投资分红如何缴纳增值税?
  • 政府补贴的银行卡注销了会怎么样
  • 收到汇票怎么承兑
  • 医疗废物处置费是什么意思
  • 更正或作废申报怎么填
  • 苹果电脑开机声音怎么关
  • 为离职员工代缴社保 如何规避法律责任
  • 外包公司代缴的税怎么算
  • 违约金合同条款怎么写
  • 上网的操作
  • 软件服务费怎么算
  • PHP:oci_num_fields()的用法_Oracle函数
  • 资产证券化会计信息披露规范
  • 防止盗链的php代码
  • vue错误提示
  • 营改增允许从销售额中扣
  • 销售使用过的固定资产3%减按2%
  • 应付债券的会计处理
  • 企业注销未抵扣完的进项税额怎么处理做账
  • 增值税退税是否属于政府补助
  • idea连接sqlserver数据库教程
  • 深度学习部署(十九): CUDA RunTime API YOLOV5后处理cpu解码以及gpu解码
  • 2022前端面试题及答案
  • css常见的选择器有哪几种
  • php cookies
  • 成本核算的会计处理
  • 健身房注册公司名称带超字
  • 股东分红缴税期限
  • 准则对()、()和()等作出基本规定
  • 销售费用工资是什么科目
  • 税号里面的0和O有区别吗
  • 差额征税好吗
  • 公司向个人支付居间费用
  • 含税含运费价格,运费谁出
  • 在建工程待摊支出是什么意思
  • 资本公积含义
  • 长期股权投资会计实训心得
  • 应交销项税转出分录
  • 交易性金融资产包括哪些项目
  • 什么服务费发票可以免税的
  • mysql如何实现多表查询
  • mysql绿色版配置
  • mysql分页性能
  • 自动锁定系统
  • qqexternal.exe是什么进程如何删除(CPU的使用率在90%)
  • win8 重置
  • pqinit.exe - pqinit是什么进程 有什么用
  • win 10系统怎么提高网速
  • win8如何关闭杀毒软件
  • Android OpenGL ES(二)----平滑着色
  • js去除特殊字符
  • 在下次启动计算机时会自动关机。重起后恢复正常(“绿色版”)
  • android界面控件
  • python爬虫介绍
  • 安卓自定义动态壁纸
  • jquery的each循环
  • 湖南省国家税务总局官网登录入口
  • 土地增值税有哪些税收优惠
  • 怎么查税务是否备案
  • 河南省税务局领导班子名单
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设