axios 封装上传文件的请求方法


Posted in Javascript onSeptember 26, 2018

axios 和 ajax 都支持异步请求,两者使用方法大同小异,在此使用 axios 上传文件的请求。使用的时候只需要在响应的 vue 组件中引入就可以。

import Vue from 'vue';

import VueCookie from 'vue-cookie';
import axios from 'axios';
// import toastr from '../assets/toastr.min';
// Vue.use(axios)


let http = {};
// let _baseURL = '/vpaas'
let _baseURL = 'http://localhost:8080/vpaas'
let ContentType = "application/json";

let uploadFileType = "multipart/form-data";
http.baseURL = _baseURL;


/**
 * 上传文件的请求
 * @param url
 * @returns {AxiosPromise}
 */
http.uploadFile = function (url, data) {
 let config = {
 //请求的接口,在请求的时候,如axios.get(url,config);这里的url会覆盖掉config中的url
 url: url,
 //基础url前缀
 baseURL: _baseURL,
 transformResponse: [function (data1) {
  var data = data1;
  if (typeof data1 == "string") {
  data = JSON.parse(data1);
  }
  //这里提前处理返回的数据;
  if (data.message && (data.data === 'login.invalid.token')) {
  window.localStorage.removeItem("access-user");
  alert("超时请重新登陆");
  window.location.href = '/';
  }
  return data;
 }],
 //请求头信息
 headers: {'access-user': window.localStorage.getItem('access-user'), 'Content-Type': uploadFileType},

 //跨域请求时是否需要使用凭证
 withCredentials: true,
 // 返回数据类型
 responseType: 'json', //default
 };
 return axios.post(url, data, config);
};

以上这篇axios 封装上传文件的请求方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 实现图片预加载(js操作 Image对象属性complete ,事件onload 异步加载图片)
Mar 25 Javascript
javascript实现禁止复制网页内容
Dec 16 Javascript
JavaScript中toString()方法的使用详解
Jun 05 Javascript
简单的jQuery入门指引
Jul 28 Javascript
创建一个类Person的简单实例
May 17 Javascript
微信小程序wx.previewImage预览图片实例详解
Dec 07 Javascript
微信小程序实现登录注册tab切换效果
Dec 29 Javascript
JS+HTML5 canvas绘制验证码示例
Dec 05 Javascript
Vue实现类似Spring官网图片滑动效果方法
Mar 01 Javascript
react-native滑动吸顶效果的实现过程
Jun 03 Javascript
JavaScript如何利用Promise控制并发请求个数
May 14 Javascript
15个值得收藏的JavaScript函数
Sep 15 Javascript
axios取消请求的实践记录分享
Sep 26 #Javascript
Node.js模拟发起http请求从异步转同步的5种用法
Sep 26 #Javascript
在vue中获取token,并将token写进header的方法
Sep 26 #Javascript
基于axios 解决跨域cookie丢失的问题
Sep 26 #Javascript
vue项目使用axios发送请求让ajax请求头部携带cookie的方法
Sep 26 #Javascript
基于JavaScript实现一个简单的Vue
Sep 26 #Javascript
微信小程序授权登录及解密unionId出错的方法
Sep 26 #Javascript
You might like
PHP+MYSQL 出现乱码的解决方法
2008/08/08 PHP
整理的一些实用WordPress后台MySQL操作命令
2013/01/07 PHP
PHP中Fatal error session_start()错误解决步骤
2014/08/05 PHP
PHP中array_map与array_column之间的关系分析
2014/08/19 PHP
WordPress的文章自动添加关键词及关键词的SEO优化
2016/03/01 PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
2016/03/04 PHP
php 提交表单 关闭layer弹窗iframe的实例讲解
2018/08/20 PHP
JavaScript中出现乱码的处理心得
2009/12/24 Javascript
JS localStorage实现本地缓存的方法
2013/06/22 Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
2015/08/11 Javascript
jQuery Ajax 全局调用封装实例代码详解
2016/06/02 Javascript
微信小程序之拖拽排序(代码分享)
2017/01/21 Javascript
nodejs中sleep功能实现暂停几秒的方法
2017/07/12 NodeJs
vue通过路由实现页面刷新的方法
2018/01/25 Javascript
jQuery滚动条美化插件nicescroll简单用法示例
2018/04/18 jQuery
php中and 和 &&出坑指南
2018/07/13 Javascript
Node.js模拟发起http请求从异步转同步的5种用法
2018/09/26 Javascript
Node.js实现用户评论社区功能(体验前后端开发的乐趣)
2019/05/09 Javascript
js+HTML5 canvas 实现简单的加载条(进度条)功能示例
2019/07/16 Javascript
JavaScript监听键盘事件代码实现
2020/06/03 Javascript
Python实现批量转换文件编码的方法
2015/07/28 Python
Python内置函数delattr的具体用法
2017/11/23 Python
浅析Python数据处理
2018/05/02 Python
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
Python qqbot 实现qq机器人的示例代码
2019/07/11 Python
python中entry用法讲解
2020/12/04 Python
印度在线购买电子产品网站:Croma
2020/01/02 全球购物
哥伦比亚加拿大官网:Columbia Sportswear Canada
2020/09/07 全球购物
大学生的应聘自我评价
2013/12/13 职场文书
求职信范文怎么写
2014/01/29 职场文书
鼓励运动员的广播稿
2014/02/08 职场文书
微笑面对生活演讲稿
2014/05/13 职场文书
公务员群众路线专题民主生活会发言材料
2014/09/17 职场文书
民事诉讼代理授权委托书
2014/10/11 职场文书
学生会主席任命书
2015/09/21 职场文书