【面试题】:axios二次封装都进行了哪些配置以及如果项目里面有两个baseURL你怎么解决?

2023-11-01

一.axios的概念

        Axios 是一个基于 promise 网络请求库,作用于node.js 和浏览器中。 它是 isomorphic 的(即同一套代码可以运行在浏览器和node.js中)。在服务端它使用原生 node.js http 模块, 而在客户端 (浏览端) 则使用 XMLHttpRequests。

二.axios的特点(不常问)

  • 从浏览器创建 XMLHttpRequests
  • 从 node.js 创建 http 请求
  • 支持 Promise API
  • 拦截请求和响应
  • 转换请求和响应数据
  • 取消请求
  • 自动转换JSON数据
  • 客户端支持防御XSRF

三.项目中axios二次封装怎么做的?

我们项目里面是通过axios.create()方法创建了一个axios实例,配置了请求的根地址baseURL和timeout

(1) timeout设置成0是什么意思
请求超时就会执行错误的代码(.catch里面的代码)

四.如果项目里面有两个baseURL你怎么解决?

①使用请求拦截器
明确vue环境变量中的baseURL地址
修改axios请求拦截
发起请求时 按需传递requestBase的配置即可
适用场景:产品后期迭代新引入后端模块,base地址不同

②使用多个axios实例(不推荐)
适用场景:产品后期迭代新引入后端模块,base地址不同
弊端:代码冗余大

③不使用baseURL 把地址写全(不推荐)
适用场景:产品开发前期,不明确多少个base地址

④使用对象键值对指代baseURL
适用场景:产品开发前期,明确了多个base。若处于项目后期,则不推荐。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【面试题】:axios二次封装都进行了哪些配置以及如果项目里面有两个baseURL你怎么解决? 的相关文章

随机推荐

  • 最大子阵列-计蒜客

    在一个数组中找出和最大的连续几个数 至少包含一个数 例如 数组A 2 1 3 4 1 2 1 5 4 则连续的子序列 4 1 2 1 有最大的和6 输入格式 第一行输入一个不超过1000的整数n 第二行输入n个整数A i 输出格式 第一行输
  • 统计学习之时间序列分析

    一 什么是时间序列 1 定义 按照时间的顺序把一个随机事件变化发展的过程记录下来 就构成了一个时间序列 对时间序列进行观察 研究 找寻它变化发展的规律 预 测它将来的走势就是时间序列分析 2 栗子 7000年前 古埃及人把尼罗河涨落的情况逐
  • (C++)类与对象——封装

    目录 封装的基础与意义 1 类的创建与调用 类的案例 学生类的创建 封装的意义 封装是C 中面向对象的三大特性之一 1 属性与行为 2 权限 class和struct的区别 struct创建时 结构体内的成员默认属性都是 public cl
  • 获取鼠标位置插入字符串

    str 指的是插入的字符串 id为textarea function setStr str id var tc id var tclen tc val length tc focus if typeof document selection
  • ubuntu 20.04 设置不见了

    ubuntu20 04 用着用着突然发现设置不见了 即使重启电脑还是找不到设置 后来通过扒帖子发现是一个包丢失了 gnome control center 重新安装一个这个包就好了 sudo apt install gnome contro
  • echarts各种调整样式(史上最全)

    Echars各种样式调整 史上最全 全图默认背景 backgroundColor rgba 0 0 0 0 默认色板 color ff7f50 87cefa da70d6 32cd32 6495ed ff69b4 ba55d3 cd5c5c
  • php发送邮件验证码,PHP(ThinkPHP5.0) + PHPMailer 进行邮箱发送验证码

    GitHub下载最新版第三方类库PHPMailer 第一步 打开网址https github com PHPMailer PHPMailer 下载PHPMailer PHPMailer 需要 PHP 的 sockets 扩展支持 而登录 Q
  • 动手深度学习:计算机视觉——语义分割

    目录 图像分割和实例分割 Pascal VOC2012 语义分割数据集 预处理数据 自定义语义分割数据集类 读取数据集 整合所有组件 转置卷积 填充 步幅和多通道 与矩阵变换的联系 使用矩阵乘法来实现卷积 使用矩阵乘法来实现转置卷积 使用全
  • 使用MATLAB绘制二元函数图像

    使用matlab绘制一个二元函数的图像 首先得告诉计算机 函数的定义域和值域 以及绘制精度 点数 然后使用meshgrid 函数划分网格 然后计算机根据你给定的函数 如Z f x y 计算每个点的取值 然后利用绘图函数 如surf 或mes
  • 在线生成免费android ios图标

    记录一个比较好用的网址 可以用来一键生成android iOS图标 且iOS图标百分百匹配 一 先上链接 https icon wuruihong com 二 点击上传 选择平台android ios 三 点击开始生成 预览 四 下载所需图
  • 提权_【CVE-2017-16995】 Linux 内核漏洞提权

    1 信息收集 上传信息收集脚本 运行并查看是否有 CVE 2017 16995 漏洞 这里我用到的信息收集脚本为 linux exploit suggester 2 pl perl linux exploit suggester 2 pl
  • R语言数据分析报告 鲍鱼年龄预测

    鲍鱼年龄预测 一 背景与目标 鲍鱼的生长在贝类家族中属于比较慢的种类 从受精卵开始 长到商品规格6 8厘米 通常需要1 4年甚至更长时间 以我国的皱纹鲍为例 大约需要近3年的生长才能达到7厘米左右 鲍鱼的生长速度随年龄的增长呈下降趋势 鲍鱼
  • 为什么计算机要使用反码/补码

    一 为什么需要反码 反码的作用就相当于数学中的负数 对于小学生来说 会做的算术题是 5 3 但是不会做3 5 于是 我们上初中的时候 数学里就引进了一个新的概念 负数 引入负数之后 本来是减法的运算就可以变成加法来实现 3 5 3 5 2
  • 冒泡排序和快速排序(C语言实现)

    冒泡排序 实现思想 升序 将数组最大值一步一步交换到数组末尾 该值完成排序 需排序区间 1 继续找需排序区间最大值交换到末尾 直到需排序区间只有一个数 整个数组就有序了 动图演示 void Swap int a int b 交换函数 int
  • qt学习笔记6(线程的同步、互斥,线程中的信号与槽,线程与主页面通讯方式,信号和槽的连接方式,线程和对象的生命周期)

    一 线程和进程的区别 线程启动和结束的方式 1 线程的启动 线程的启动方式有上图所示两种 第一种 run 函数 在直接利用对象调用类中的 run 函数 就相当于效对象中的函数 这时候的run 函数并不是线程中的函数 第二种使用 start
  • vue.js--模板语法

    vue是一种比较流行的前端框架 目标是通过尽可能简单的API实现相应的数据绑定和组合的视图组件 轻量的框架 只聚焦于试图层 可以和其他的库配合使用 看了几集视频看不下去了 还是菜鸟教程适合我 emmm VUE的安装 1 直接 VUE模版语法
  • css设置背景图片缩小,css3 设置背景图片大小(缩略图形式缩小)

    lbrack 译 rsqb libev和libevent的设计差异 本文译自what s the difference between libev and libevent 作者是libev作者 问 两个库都是为异步io调度而设计 在Lin
  • (附源码)计算机毕业设计ssm互联网直播管理系统

    项目运行 环境配置 Jdk1 8 Tomcat7 0 Mysql HBuilderX Webstorm也行 Eclispe IntelliJ IDEA Eclispe MyEclispe Sts都支持 项目技术 SSM mybatis Ma
  • Log4j2日志分级(error单独输出)

  • 【面试题】:axios二次封装都进行了哪些配置以及如果项目里面有两个baseURL你怎么解决?

    一 axios的概念 Axios 是一个基于 promise 网络请求库 作用于node js 和浏览器中 它是 isomorphic 的 即同一套代码可以运行在浏览器和node js中 在服务端它使用原生 node js http 模块