vue整合axios 未完

一、简介

1、介绍

  • axios前端异步请求库类似jouery ajax技术,
  • axios用来在前端页面发起一个异步请求,请求之后页面不动,响应回来刷新页面局部;
  • Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中

2、特性:

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

二、引用步骤

1、安装

bash 复制代码
cnpm i axios --save

2、全局引用

javascript 复制代码
//在main.js里面引用
...
import axios from 'axios'
...
Vue.prototype.axios = axios;
 
new Vue({
    axios,
    router,
    store,
    render:h=>h(App)
}).$mount('#app'

三、基本使用

1、异步请求之GET方式(查询)

javascript 复制代码
axios.get("http://localhost:8081/demo?id=21&name=xiaowang ").then( function(res){
    //代表请求成功之后处理
	console.log(res);
	console.1og (res.data);
}).catch( function (err){
    //代表请求失败之后处理
	alert ('进入catch ')
	console.log (err);
});

2、发送异步请求之POST方式(添加)

javascript 复制代码
axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

3、其他方式的请求

javascript 复制代码
axios.put(.then( ).catch ( ); //修改
axios.patch( ).then( ).catch( );
axios.delete( "ur1?id=21").then ( ).catch ( ); //删除

4、axios创建默认实例发送请求

javascript 复制代码
//创建axios的配置对象
var instance = axios. create({
	baseURL: 'http://localhost:8081/',
    timeout: 5000,
});

instance.get("/demo?id=21&name=xiaowang ").then( function(res) {
    //代表请求成功之后处理
	console.log(res);
	console.1og (res.data);
}).catch( function (err) {
    //代表请求失败之后处理
	alert ('进入catch ');
	console.log (err);
});

5、axios拦截器(interceptor)

分类:
  • 请求拦截器:在请求发送前进行必要操作处理,例如添加统一的cookie、请求体加验证、设置请求头等,相当于是对每个接口里相同操作的一个封装;
  • 响应拦截器:对响应结果(响应体)进行处理,通常是数据统一处理等,也常来判断登录失效等。
作用:
  • 用来将axios中共有参数,响应公共处理等公共部分,交给拦截器处理,减少axios发送请求时代码冗余。
拦截器一般做什么?
  • 修改请求头的一些配置项
  • 给请求的过程添加一些请求的图标
  • 给请求添加参数
  • 对响应结果进行处理

封装axios

封装参考

相关推荐
lichenyang4531 小时前
Docker 学习笔记(一):为什么需要镜像、容器和仓库?
前端
kyriewen1 小时前
别再对着 TypeScript 报错发呆了:我把 10 个最常见的红色波浪线翻译成了人话
前端·javascript·typescript
IT_陈寒1 小时前
SpringBoot自动配置的坑,我的API突然就404了
前端·人工智能·后端
free352 小时前
从 0 实现一个 Tiny JavaScript VM:项目架构拆解
javascript
暴走的小呆2 小时前
Vue 2 中 Object 的变化侦测:从 getter/setter 到 Dep、Watcher、Observer
vue.js
奇奇怪怪的2 小时前
Embedding 模型 10+ 横向评测
前端
陈广亮2 小时前
Monorepo 从 0 到 1 实操指南 2026 版:pnpm catalogs + Turborepo 2.x + changesets 全链路
前端
子兮曰2 小时前
OpenMontage 深度解剖:你的 AI 编程助手,其实是个视频工作室
前端·后端·ai编程
敲代码的鱼2 小时前
PDF 预览与签名批注写回 支持安卓 iOS 鸿蒙 UTS插件
android·前端·ios
英勇无比的消炎药2 小时前
TinyVue v-auto-tip: 文本超长自动提示的优雅方案
vue.js