VUE 更好的 ajax 上传处理 axios.js实现代码

发布时间 - 2026-01-11 01:04:02    点击率:

vue更新到2.0之后,作者就宣告不再对vue-resource更新,而是推荐的axios,前一段时间用了一下,现在说一下它的基本用法。

首先就是引入axios,如果你使用es6,只需要安装axios模块之后

import axios from 'axios';
//安装方法
npm install axios
//或
bower install axios

当然也可以用script引入

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

axios提供了一下几种请求方式

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]])

这里的config是对一些基本信息的配置,比如请求头,baseURL,当然这里提供了一些比较方便配置项

//config
import Qs from 'qs'
{
 //请求的接口,在请求的时候,如axios.get(url,config);这里的url会覆盖掉config中的url
 url: '/user',

 // 请求方法同上
 method: 'get', // default
 // 基础url前缀
 baseURL: 'https://some-domain.com/api/',
  
    
 transformRequest: [function (data) {
  // 这里可以在发送请求之前对请求数据做处理,比如form-data格式化等,这里可以使用开头引入的Qs(这个模块在安装axios的时候就已经安装了,不需要另外安装)
  data = Qs.stringify({});
  return data;
 }],

 transformResponse: [function (data) {
  // 这里提前处理返回的数据

  return data;
 }],

 // 请求头信息
 headers: {'X-Requested-With': 'XMLHttpRequest'},

 //parameter参数
 params: {
  ID: 12345
 },

 //post参数,使用axios.post(url,{},config);如果没有额外的也必须要用一个空对象,否则会报错
 data: {
  firstName: 'Fred'
 },

 //设置超时时间
 timeout: 1000,
 //返回数据类型
 responseType: 'json', // default


}

有了配置文件,我们就可以减少很多额外的处理代码也更优美,直接使用

axios.post(url,{},config)
  .then(function(res){
    console.log(res);
  })
  .catch(function(err){
    console.log(err);
  })
//axios请求返回的也是一个promise,跟踪错误只需要在最后加一个catch就可以了。
//下面是关于同时发起多个请求时的处理

axios.all([get1(), get2()])
 .then(axios.spread(function (res1, res2) {
  // 只有两个请求都完成才会成功,否则会被catch捕获
 }));

最后还是说一下配置项,上面讲的是额外配置,如果你不想另外写也可以直接配置全局

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';

//当然还可以这么配置
var instance = axios.create({
 baseURL: 'https://api.example.com'
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# vue  # axios  # 上传文件  # axios.js  # ajax  # 上传  # vue使用Axios做ajax请求详解  # 在Vue组件化中利用axios处理ajax请求的使用方法  # vue axios 在页面切换时中断请求方法 ajax  # vue结合axios与后端进行ajax交互的方法  # vue 组件的封装之基于axios的ajax请求方法  # vue项目使用axios发送请求让ajax请求头部携带cookie的方法  # Vue官方推荐AJAX组件axios.js使用方法详解与API  # Vue CLI项目 axios模块前后端交互的使用(类似ajax提交)  # Vue通过axios发送ajax请求基础演示  # 如果你  # 则会  # 还可以  # 多个  # 不需要  # 才会  # 可以用  # 只需  # 要在  # 用了  # 要用  # 如果没有  # 可以直接  # 几种  # 就可  # 是说  # 只需要  # 可以使用  # 报错  # 配置文件 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Python3.6正式版新特性预览  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  WEB开发之注册页面验证码倒计时代码的实现  如何用y主机助手快速搭建网站?  网站页面设计需要考虑到这些问题  Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能  Laravel怎么进行数据库回滚_Laravel Migration数据库版本控制与回滚操作  如何用VPS主机快速搭建个人网站?  Laravel如何配置和使用缓存?(Redis代码示例)  使用豆包 AI 辅助进行简单网页 HTML 结构设计  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  Android利用动画实现背景逐渐变暗  Laravel如何实现模型的全局作用域?(Global Scope示例)  高端建站三要素:定制模板、企业官网与响应式设计优化  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  javascript基于原型链的继承及call和apply函数用法分析  浅谈redis在项目中的应用  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  如何快速上传自定义模板至建站之星?  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  长沙企业网站制作哪家好,长沙水业集团官方网站?  香港服务器WordPress建站指南:SEO优化与高效部署策略  Python图片处理进阶教程_Pillow滤镜与图像增强  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  黑客如何通过漏洞一步步攻陷网站服务器?  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何打造高效商业网站?建站目的决定转化率  JS碰撞运动实现方法详解  如何用已有域名快速搭建网站?  如何确保西部建站助手FTP传输的安全性?  Linux网络带宽限制_tc配置实践解析【教程】  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】  html如何与html链接_实现多个HTML页面互相链接【互相】  Laravel如何实现一对一模型关联?(Eloquent示例)  Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  jQuery中的100个技巧汇总  Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言  Android实现代码画虚线边框背景效果  Laravel怎么为数据库表字段添加索引以优化查询  如何用AI帮你把自己的生活经历写成一个有趣的故事?  网站制作免费,什么网站能看正片电影?  如何在服务器上三步完成建站并提升流量?  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】