【Vue】axiox基本使用

Vue 网络处理 - axios 异步请求的使用,请求响应拦截器(最佳实践) axios 用来在前端页面发起一个异步请求,请求之后页面不动,响应回来刷新局部.1.为什么不使用 ajax 呢?官方:在 jQuery 中推荐使用 ajax 技术, Vue 里面不推荐使用 jQuery 框架,因此 Vue 更推荐使用 axiox 异步请求库(axios并不是 vue 官方库).2.axios 特性可以从浏览器中创建 XMLHttpRequests可以从 node.js 中创建 http 请求.支持 Promise API.支持拦截请求和响应.转换请求数据和响应数据. 阅读详情

安装依赖

npm install axios

在全局配置文件main.js引入

import axios from 'axios'

// 将axios绑定到全局Vue原型上
Vue.prototype.$axios = axios

// 全局的 axios 默认值
axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

使用

this.$axios.get('api',{
      params:{
        id:1
      }
    }).then(function(res){
      console.log(res)
    }).catch(function(error){
      console.log(error)
    })
this.$axios.post('api',{
      id:2,
      username:'李四'
    }).then(function(res){
      console.log(res)
    }).catch(function(error){
      console.log(error)
    })

别名方法

为方便起见,为所有支持的请求方法提供了别名

axios.request(config)
axios.get(url[, config])
axios.delete(url[, config])
axios.head(url[, config])
axios.post(url[, data[, config]])
axios.put(url[, data[, config]])
axios.patch(url[, data[, config]])

并发请求

function getUserAccount() {
  return axios.get('/user/12345');
}

function getUserPermissions() {
  return axios.get('/user/12345/permissions');
}

axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function (acct, perms) {
    // 两个请求现在都执行完成
  }));

相应结构:response

{
  // `data` 由服务器提供的响应
  data: {},

  // `status` 来自服务器响应的 HTTP 状态码
  status: 200,

  // `statusText` 来自服务器响应的 HTTP 状态信息
  statusText: 'OK',

  // `headers` 服务器响应的头
  headers: {},

  // `config` 是为请求提供的配置信息
  config: {}
}

拦截器

  • 请求拦截器的作用比如配置header、转换数据等
  • 响应拦截器的作用比如token过期进行登录跳转等
import querystring from 'querystring'

// 在执行请求之前执行此方法
axios.interceptors.request.use(function (config) {
  // 在post提交时将data转换为json字符串
  if(config.method === "post"){
    config.data = querystring.stringify(config.data);
  }
  return config;
}, function (error) {
  return Promise.reject(error);
});

// 在执行axiox回调函数之前执行此方法
axios.interceptors.response.use(function (response) {
  switch (res.data.code) {
     case 401: router.push({path: '/login'});
     ......
  }
  return response;
}, function (error) {
  return Promise.reject(error);
});

跨域

配置config/index.js,proxyTable

module.exports = {
  dev: {
    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
      '/api': {
        target: 'http://localhost:8881',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    },
    
    // Various Dev Server settings
    host: 'localhost', // can be overwritten by process.env.HOST
    port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
    ......

在main.js中配置拦截的路径

Vue.prototype.HOST = '/api'

注意:修改配置文件后,需要 npm run dev 重启项目才能生效

使用

this.$axios.get(this.HOST + '/users',{
      params:{
        id:1
      }
    }).then(function(res){
      console.log(res)
    }).catch(function(error){
      console.log(error)
    })
基于Simulink的IEEE33节点配电网仿真实战:从建模到分布式能源集成 本文详细介绍了基于Simulink的IEEE33节点配电网仿真实战,从基础建模到分布式能源集成。通过MATLAB脚本管理参数、搭建Simulink模块,并集成风机和光伏系统,实现高效配电网仿真。文章还涵盖潮流计算、故障分析及性能优化技巧,为电力系统仿真提供实用指导。 阅读详情

相关推荐

电磁场可视化

电磁场可视化 如题,做了电磁场可视化这么久了,也是颇有些心得了,简单描述一下怎么做这个项目的。 开始时是从最基本的OpenGL开始做的,必不可少的翻了许多的文献,后来是直接在unity中做,发现效果挺好,而且可控性强好多。反复琢磨后,发现可视化的渲染,有几种思路,第一就是用linerender,画线的方法,另一种就是用shader。 第一种我通过unity自带的linewave插件可以做到 详细的就是,linewave插件可以轻松画出曲线等,并且可以添加碰撞,控制频率幅度长度等一切的条件数值,而且令人惊喜

weixin_43979140的博客 1670

Ajax(三): axios发送Ajax请求

axios发送Ajax请求

799喵的博客 1325

2D激光slam数据集的下载与测试

参考博客: https://blog.youkuaiyun.com/qq_24894159/article/details/81265991 https://blog.youkuaiyun.com/fk1174/article/details/52673413#commentBox 数据集下载与生成 下载数据集 下载网址: http://ais.informatik.uni-freiburg.de/slamevaluation/datasets.php 进去网站后点你想下载的对应的"download log file" 然后你

老李的博客 4025

vue axios全攻略

不再继续维护vue-resource,并推荐大家使用 axios 开始,axios 被越来越多的人所了解。本来想在网上找找详细攻略,突然发现,axios 的官方文档本身就非常详细!!有这个还要什么自行车!!所以推荐大家学习这种库,最好详细阅读其官方文档。大概翻译了一下 axios 的官方文档,相信大家只要吃透本文再加以实践,axios 就是小意思啦!! 如果您觉得本文对您有帮助,不妨点个赞或关注收...

weixin_33918357的博客 5059

从零上手HiAgent:构建能听懂指令的智能体框架实战指南

智能体(Agent)作为人工智能领域的重要范式,正从传统的预设流程自动化转向以目标驱动的自主规划与执行。其核心原理在于利用大语言模型(LLM)作为决策大脑,通过任务规划、工具调用与记忆机制,将模糊的自然语言指令转化为可执行的工作流。这一技术显著提升了人机协作的效率和自然度,其价值在自动化办公、数据分析与智能流程编排等场景中尤为突出。本文聚焦于HiAgent这一具体框架,深入解析其作为智能体开发平台的核心架构,涵盖规划器、执行器、工具集等关键组件,并提供从环境配置、自定义工具开发到复杂任务链构建的完整工程实践

weixin_29266007的博客 881

ubuntu虚拟机搭建OP-TEE

在网上找了一些搭建OP-TEE的过程,模仿着进行搭建,结果有好多报错,为了方便自己以后重新搭建,所以将整个过程记录下来。

weixin_44213847的博客 999

Axios使用方法详解,从入门到进阶

Axios 是一个基于 promise 的网络请求库,可以用于浏览器和 node.js中。Axios(相比于原生的XMLHttpRequest对象来说) 简单易用,(相比于jQuery)axios包尺寸小且提供了易于扩展的接口,是专注于网络请求的库。

青春木鱼的博客 5万+

基于单片机控制双向可控硅灯光强度设计

*单片机设计介绍,基于单片机控制双向可控硅灯光强度设计。

QQ2193276455的博客 2456

vue-axiox网络请求

Axios 介绍 1.是基于Promise的HTTP客户端,可以在浏览器和Node.js中使用 axios安装 npm install axios 客户端引入 import axios from 'axios'; 服务器端引入 const axios = require('axios'); Get请求 axios.get('http://localhost:3000') .then(res => { console.log..

早日成为鹏总 922

Android P车机添加屏幕多指全局自定义手势操作

参照原生状态栏全局下拉手势拦截,实现屏幕全局多指手势响应操作,并对手势进行转换为KeyEvent,以便项目自定义手势行为或应用拦截手势行为。

shusuanly的博客 1250

2020.12.25丨CRISPResso2安装教程

一个月前接到一个项目,说是做关于CRISPR的编辑效率个性化分析。本来这个分析以前是没有做过的,不过客户发了参考文献。里面流程和命令行都非常清楚,再加上读研期间CRISPR的项目“中道崩殂”,让我对CRiSPR的技术有些执念,便下决心接下来试试。 整个测序分析使用的工具就是CRISPResso,,下面介绍最快捷的安装方式。 首先,CRISPResso只支持python2.X,不支持3.X你需要下载Anaconda或者miniconda,以Miniconda为例: 安装环境: Linux 64-bi

4631

vue整合axiox

安装axiox: cnpm install axios --save 新建http.js 配置axiox的请求方法 import axios from 'axios' import Vue from 'vue' import router from '@/router' axios.defaults.timeout = 5000; //响应时间 axios.defaults.headers.post['Content-Type'] = 'application/json; charset=utf.

秋叶清风的博客 172

mediasoup源码分析(二十)服务端架构设计

目录 简介 信令服务(房间服务) 调度服务 媒体服务 简介 流媒体服务器大的方向上可以分为上述三个模块。目前行业内都是分布式服务,独立部署。mediasoup信令与媒体之间虽然可以管道通信。但在行业内,服务之间通过管道通信用的少。 一般是rpc、mq,或者传统的tcp。这块licode架构比较不错,licode是信令和媒体服务通过MQ消息队列解耦。 下面介绍一下这三个服务主要功能,当然文中所说也是一家之言。 信令服务(房间服务) 信令服务也称为房间服务。有的企业把信令和房间分开,信..

lcalqf的专栏 1545

axiox - vue脚手架

axiosaxios.get:从服务器获取数据"http://yapi.smart-xwork.cn/mock/169327/emp/list" 这个地址为YAPI 的mocthen(result => {result.data}) :成功回调函数 保存数据YAPIvuecmd:输入 vue ui 进入界面node_modules :整个项目的依赖包public:存放项目的静态文件package.json :模块基本信息,项目开发所需要的模块,版本信息。

lingxiaolu07的博客 486

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

基于axiox vue与python交互

/ 导入axios库。1.向后端传递参数的axios请求-请求头。form可以直接转化json。

secret125的博客 830

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

vue3.0 axiox模块添加

【代码】vue3.0 axiox模块添加。

w1314_1314的博客 543

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

配置vue全局封装axiox的文件

封装可复用axiox

weixin_38655115的博客 155

vue脚手架以及Vite搭建项目

使用npm 或者 yarn 全局安装Vite。3 和 TypeScript 模板。# 准备一个空文件夹,执行以下命令。# dome 替换为你的项目名称。vue create 项目名。# 运行项目 项目创建成功。# 安装成功会出现版本号。5.选择插件的配置存放。4.选择CSS预处理。# 第一步 安装依赖。# 第二步 运行项目。

w1314_1314的博客 2859

vue前端项目安装axios失败,以及安装vue-axiox,笔记

记录一下错误解决方法。 安装axios的时候报错: npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! node-sass@4.13.1 postinstall: `node scripts/build.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the node-sass@4.13...

Coldmood的博客 1万+

vue3 +TS axiox接口模块添加,fast mock接口访问测试

vue3 +TS axiox接口模块添加,fast mock接口访问测试

xhc6666的博客 1507

ssm 对接vue跨域问题

axiox.defaults.withCredentials: true

SuperChen12356的博客 315

如何在vue-cli脚手架使用axiox发起请求,并利用mockjs模拟接口数据

第一步:cmd进入到你的项目目录,安装axios与mockjs cnpm install axios  cnpm install mockjs 第二步:在src目录下面新建两个文件夹mock与api(这里是放置api地址的地方)在mock文件夹下新建一个文件usermock.js,api文件夹下新建一个Apipath.json文件,下面是我文件夹目录 Apipath.json文件内容 ...

qq_37201181的博客 1864

vue3+TS+pinia+cookies+axiox 实现简单登录的持久化

vue3+TS+pinia+cookies+axiox 实现简单登录的持久化

xhc6666的博客 1352

实战49工程化_案例基础实现

首先需要下载,用管理员模式打开cmd页面,转移到自己的项目文件目录下执行安装指令。

学习java的大雪笙一枚 230

培训管理系统

强调下依赖:首先管理员创建部门,导师学员隶属于部门,相同部门里的学员导师相互关联,就像同一个班的,老师布置的内容只有老师和同学能看到内容,老师可隶属于多个部门,但同学只在一个班。技术栈:idea springboot +mybatis +mysql+Axiox+Vue(前端无所谓,简约风就行,不要老土就行)我这个写的逻辑关系有点类似于学习通这种网课的网站,兼容线下。

m0_73268882的博客 91

vite 搭建vue3 TS项目初始框架

使用 vite 搭建 vue3 的项目模板,使用TS语法

xhc6666的博客 2941
上一篇: 【Vue】引入第三方组件(Layui)
下一篇: Java基础之创建对象的四种方式
章 鱼
博客等级 码龄10年 203粉丝 105原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值