复杂封装,包含提示和状态码的,点击这里查看

以下是简单封装axios的request.js文件:

import axios from 'axios'
import router from './../router'
import { Message } from 'element-ui'// 设置axios全局默认的BASE-URL, 只要设置了全局的默认base_url,以后的请求会自动拼接上base_url
// -------------------------------注意改成自己的公共url------------------------------------
axios.defaults.baseURL = 'http://192.168.1.194/gateway'
axios.defaults.timeout = 10000// 配置axios的请求拦截器-(每次在请求头上携带后台分配的token-后台判断token是否有效等问题)
axios.interceptors.request.use(config => {// 在发送请求之前做些什么// console.log('请求到了哟', config.headers.Authorization)// 如果有其他的特殊配置 只需要判断config参数 设置即可// 标识系统为AJAX请求config.headers['X-Requested-With'] = 'XMLHttpRequest'// 统一的给config设置 token-------------------------------注意获取方法------------------------------------//   config.headers.Authorization = JSON.parse(localStorage.getItem('token'))config.headers['Token'] = '3d2eec53c6f74f43a85e8df083d9bf84'return config
}, error => {// 对请求错误做些什么return Promise.reject(error)
}
)// 响应拦截器 与后端定义状态是100时候是错误 跳转到登录界面
axios.interceptors.response.use(response => {// 对响应数据做点什么console.log('接口success', response)// 当返回信息为未登录或者登录失效的时候重定向为登录页面if (response.data.status == 100 ||response.data.message == '用户未登录或登录超时,请登录!') {localStorage.removeItem('token')router.push({path: '/login',querry: { } // 从哪个页面跳转})Message.warning(response.data.message)}return response.data
}, error => {console.log('接口error', error)// 对响应错误做点什么return Promise.reject(error)
}
)const $http = {}$http.get = function(url, data, config) {//  这一步把api方法里的  地址 参数 配置传入进来 配置到config 然后调用上面封装的axiosconfig = config || {}config.url = urlconfig.method = 'get'config.params = datareturn axios.request(config)
}$http.delete = function(url, data, config) {config = config || {}config.url = urlconfig.method = 'delete'config.params = datareturn axios.request(config)
}$http.post = function(url, data, config) {config = config || {}config.url = urlconfig.method = 'post'config.data = datareturn axios.request(config)
}$http.put = function(url, data, config) {config = config || {}config.url = urlconfig.method = 'put'config.data = datareturn axios.request(config)
}export { axios, $http }

简单的封装axios 不包含状态码和提示相关推荐

  1. 使用TS+vue3封装axios时编译报错,提示You may need an additional loader to handle the result of these loaders.

    基于vue3+TS构建的商城后台管理系统 根据coderwhy老师指导搭建的项目为PC端商品后台管理系统. 报错: 使用TS+vue3封装axios时编译报错,提示You may need an ad ...

  2. ajax的get/post请求及其封装,以及ajaxHTTP状态码是啥子意思

    ajax的get/post请求及其封装,以及ajax/HTTP状态码是啥子意思 ajax是什么? AJAX即"Asynchronous Javascript And XML"(异步 ...

  3. axios post 400 状态码

    1.400状态码 400的主要有两种形式: (1).bad request意思是"错误的请求": (2).invalid hostname意思是"不存在的域名" ...

  4. 服务器状态304,解析304状态码错误提示的原因与解决304错误提示的方法

    对于第304页的错误,一直是SEO工作人员老生常谈的话题.初始网站管理员对304错误非常敏感.互联网上总是有与之相关的新闻,比如:大量的304状态码会在网站上被降级,但这是真的吗? 一.304错误提示 ...

  5. http状态码304缓存机制(强缓存和协商缓存-304)

    前言:好久没写博客了,今天早上闲着没事重新看了下http的304缓存机制.下面我就简单的讲下我的理解吧. 描述:首先我们先明白一点什么是状态码.对于我们开发来说,大家一说起http状态码,都能随口说几 ...

  6. HTTP的303、307状态码

    之前在<http权威指南>中看到了HTTP的307状态码,当时因为没有找到可以实验的网站所以没有比较深的印象,今天在排查一个问题的时候恰巧遇到了HTTP/1.1 307 Temporary ...

  7. php 获取header_php 输出404状态码

    今天在做一个php数据提交的小功能时,需要在判断一个值是如果为空时,就让后台的逻辑页面返回 404 状态码,提示用户页面不存在.那么接下来,飞鸟慕鱼博客要说的是 php 如何返回或输出 html 40 ...

  8. vue项目中简单进行axios封装及响应状态码提示!

    import Vue from 'vue'import axios from 'axios' import { Toast,Indicator,MessageBox } from 'mint-ui'; ...

  9. axios请求失败,response.data返回的状态码及错误信息获取

    axios请求失败,后端接口返回的状态码及错误信息获取 使用封装的elementUI后台框架,后台框架自定义封装并返回的code码转态(全部的返回数据,如下所示): 浏览器查看:返回的 error 信 ...

最新文章

  1. python线下培训-线下培训价值一万八的某达PYTHON培训视频
  2. JVM - 基本类型的包装类和对象池
  3. datasnap——动态注册服务类
  4. 第四季-专题4-嵌入式文件系统
  5. Halcon标定系列(3):我个人总结的“眼在手外“和“眼在手上”的心得笔记
  6. 十三肝了2晚的《IDEA操作手册-终极秘籍》终于来了...
  7. 【PowerDesigner】PowerDesigner的下载及安装
  8. 《财富自由》平民出身的富豪积累财富的原则和方法
  9. 创造力公式和成就感公式
  10. SQL教程之使用 dbt 和 SQLfluff 整理 SQL
  11. 微信推送封面尺寸_微信公众号推送文图片什么尺寸最佳?
  12. 布斯(Steve Jobs)在斯坦福大学的演讲稿,中英文对照版
  13. 2021-11-02发电机转子方程的推导
  14. P1413 坚果保龄球——题解2020.10.10
  15. visual studio2017许可证过期,只有退出visual studio选项
  16. Linux 磁盘合并挂载
  17. windows bat批处理解压文件
  18. 网络流(所有常用类型网络流算法的模板)
  19. 景德镇适合几月去旅游 景德镇必去的旅游景点
  20. Mac系统快捷键汇总

热门文章

  1. 208. 实现 Trie (前缀树)
  2. git 代理 git_如何成为Git专家
  3. 由衷的信来激励有抱负的开发人员
  4. vj节点_创意编码—如何在JavaScript中创建VJ引擎
  5. 客户细分模型_Avarto金融解决方案的客户细分和监督学习模型
  6. 贝塞尔修正_贝塞尔修正背后的推理:n-1
  7. scrape创建_确实在2分钟内对Scrape公司进行了评论和评分
  8. JSP基础--动作标签
  9. JAVA多线程之Synchronize 关键字原理
  10. android闹钟实现原理