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 相关文章推荐
ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList
Feb 03 Javascript
使用jQuery实现验证上传图片的格式与大小
Dec 03 Javascript
阻止表单提交按钮多次提交的完美解决方法
May 16 Javascript
vue2.0父子组件间通信的实现方法
Apr 19 Javascript
Angular2 组件交互实例详解
Aug 24 Javascript
react-native使用react-navigation进行页面跳转导航的示例
Sep 07 Javascript
微信小程序实现刷脸登录
May 25 Javascript
详解创建自定义的Angular Schematics
Jun 06 Javascript
在vue中实现点击选择框阻止弹出层消失的方法
Sep 15 Javascript
Electron中实现大文件上传和断点续传功能
Oct 28 Javascript
详解Vue调用手机相机和相册以及上传
May 05 Javascript
JavaScript 如何在浏览器中使用摄像头
Dec 02 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
基于文本的留言簿
2006/10/09 PHP
对javascript和select部件的结合运用
2006/10/09 PHP
PHP在获取指定目录下的目录,在获取的目录下面再创建文件,多平台
2011/08/03 PHP
如何取得中文字符串中出现次数最多的子串
2013/08/08 PHP
浅析php单例模式
2014/11/25 PHP
浅析php原型模式
2014/11/25 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
PHP使用PDO实现mysql防注入功能详解
2019/12/20 PHP
用js遍历 table的脚本
2008/07/23 Javascript
js 获取服务器控件值的代码
2010/03/05 Javascript
javascript 仿QQ滑动菜单效果代码
2010/09/03 Javascript
根据邮箱的域名跳转到相应的登录页面的代码
2012/02/27 Javascript
js中的push和join方法使用介绍
2013/10/08 Javascript
分享JavaScript获取网页关闭与取消关闭的事件
2013/12/13 Javascript
JS+CSS实现仿msn风格选项卡效果代码
2015/10/22 Javascript
超实用的JavaScript表单代码段
2016/02/26 Javascript
BootStrap入门教程(三)之响应式原理
2016/09/19 Javascript
js实现不提示直接关闭网页窗口
2017/03/30 Javascript
JS利用cookies设置每隔24小时弹出框
2017/04/20 Javascript
JS/jquery实现一个网页内同时调用多个倒计时的方法
2017/04/27 jQuery
各种选择框jQuery的选中方法(实例讲解)
2017/06/27 jQuery
详解Vue webapp项目通过HBulider打包原生APP
2018/06/29 Javascript
小程序登录态管理的方法示例
2018/11/13 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
2020/06/05 Javascript
js前端传json后台接收‘‘被转为quot的问题解决
2020/11/12 Javascript
在Python中通过threading模块定义和调用线程的方法
2016/07/12 Python
python判断两个序列的成员是否一样的实例代码
2020/03/01 Python
在python中使用pyspark读写Hive数据操作
2020/06/06 Python
python程序实现BTC(比特币)挖矿的完整代码
2021/01/20 Python
日本非常有名的内衣丝袜品牌:GUNZE
2017/01/06 全球购物
高中物理教学反思
2014/02/08 职场文书
科学发展观演讲稿
2014/09/11 职场文书
党的群众路线教育实践活动方案
2014/10/31 职场文书
2015年中学体育教师工作总结
2015/10/23 职场文书
五年级作文之成长
2019/09/16 职场文书
Win10 最新稳定版本 21H2开始推送
2022/04/19 数码科技