vue 对axios get pust put delete封装的实例代码


Posted in Javascript onJanuary 05, 2020

vue 对axios get pust put delete封装的实例代码

axios.js

import axios from 'axios';
import Qs from 'qs';
import {Message} from 'element-ui';
 
 
axios.defaults.baseURL = "/api";
// 设置请求超时时间
axios.defaults.timeout = 30000;
 
// 设置post请求头
axios.defaults.headers.post['Content-Type'] = 'application/json;charset=UTF-8';
 
// 请求拦截
axios.interceptors.request.use(config => {
  // 在发送请求之前做些什么 验证token之类的
 
  return config;
}, error => {
  // 对请求错误做些什么
 
  Message.error({message: '请求超时!'})
  return Promise.error(error);
})
 
// 响应拦截
axios.interceptors.response.use(response => {
  // 对响应数据做点什么
 
  return response;
}, error => {
  // 对响应错误做点什么
 
  return Promise.reject(error);
});
 
 
// 封装get方法和post方法
 
/**
 * get方法,对应get请求
 * @param {String} url [请求的url地址]
 * @param {Object} params [请求时携带的参数]
 */
export function get(url, params) {
  return new Promise((resolve, reject) => {
    axios.get(url, {
      params: params
    }).then(res => {
      resolve(res.data);
      // Loading.service(true).close();
      // Message({message: '请求成功', type: 'success'});
    }).catch(err => {
      reject(err.data)
      // Loading.service(true).close();
      Message({message: '加载失败', type: 'error'});
    })
  });
}
 
/**
 * post方法,对应post请求
 * @param {String} url [请求的url地址]
 * @param {Object} params [请求时携带的参数]
 */
export function post(url, params) {
  return new Promise((resolve, reject) => {
    axios.post(url, params)
      .then(res => {
        resolve(res.data);
        // Loading.service(true).close();
        // Message({message: '请求成功', type: 'success'});
      })
      .catch(err => {
        reject(err.data)
        // Loading.service(true).close();
        Message({message: '加载失败', type: 'error'});
      })
  });
}
 
/**
 * post方法,参数序列化
 * @param {String} url [请求的url地址]
 * @param {Object} params [请求时携带的参数]
 */
export function qspost(url, params) {
  return new Promise((resolve, reject) => {
    axios.post(url, Qs.stringify(params))
      .then(res => {
        resolve(res.data);
        // Loading.service(true).close();
        // Message({message: '请求成功', type: 'success'});
      })
      .catch(err => {
        reject(err.data)
        // Loading.service(true).close();
        Message({message: '加载失败', type: 'error'});
      })
  });
}
 
 
/**
 * put方法,对应put请求
 * @param {String} url [请求的url地址]
 * @param {Object} params [请求时携带的参数]
 */
export function put(url, params) {
  return new Promise((resolve, reject) => {
    axios.put(url, params)
      .then(res => {
        resolve(res.data);
        // Loading.service(true).close();
        // Message({message: '请求成功', type: 'success'});
      })
      .catch(err => {
        reject(err.data)
        // Loading.service(true).close();
        Message({message: '加载失败', type: 'error'});
      })
  });
}
 
 
/**
 * delete
 * @param {String} url [请求的url地址]
 * @param {Object} params [请求时携带的参数]
 */
export function deletefn(url, params) {
  return new Promise((resolve, reject) => {
    axios.delete(url, params)
      .then(res => {
        resolve(res.data);
        // Loading.service(true).close();
        // Message({message: '请求成功', type: 'success'});
      })
      .catch(err => {
        reject(err.data)
        // Loading.service(true).close();
        Message({message: '加载失败', type: 'error'});
      })
  });
}

vue 对axios get pust put delete封装的实例代码

brand.js

import { get,post,qspost,put,deletefn } from '../../utils/axios/axios'
 
 
 
export const getBrandList = data => post("/item/brand/list",data)
 
export const addBrand = data =>post("/item/brand",data);

Brand.vue

import {getBrandList,addBrand} from "../../api/item/brand";

vue 对axios get pust put delete封装的实例代码

以上就是本次介绍的全部相关知识点,感谢大家的学习和对三水点靠木的支持。

以上就是全部实例代码,感谢大家的学习和对三水点靠木的支持。

Javascript 相关文章推荐
csdn 论坛技术区平均给分功能
Nov 07 Javascript
json-lib出现There is a cycle in the hierarchy解决办法
Feb 24 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
Mar 01 Javascript
JS使用getComputedStyle()方法获取CSS属性值
Apr 23 Javascript
jQuery使用之标记元素属性用法实例
Jan 19 Javascript
深入理解JavaScript系列(27):设计模式之建造者模式详解
Mar 03 Javascript
js获取页面description的方法
May 21 Javascript
jquery操作angularjs对象
Jun 26 Javascript
jQuery中select与datalist制作下拉菜单时的区别浅析
Dec 30 Javascript
jQuery Validate 校验多个相同name的方法
May 18 jQuery
BootStrap的双日历时间控件使用
Jul 25 Javascript
记一次用vue做的活动页的方法步骤
Apr 11 Javascript
JavaScript修改注册表实例代码
Jan 05 #Javascript
详解JavaScript修改注册表的方法
Jan 05 #Javascript
js判断非127开头的IP地址的实例代码
Jan 05 #Javascript
Vue 解决路由过渡动画抖动问题(实例详解)
Jan 05 #Javascript
分享JS表单验证源码(带错误提示及密码等级)
Jan 05 #Javascript
jQuery 选择器用法基础入门示例
Jan 04 #jQuery
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
Jan 04 #Javascript
You might like
PHP header()函数常用方法总结
2014/04/11 PHP
ThinkPHP的Widget扩展实例
2014/06/19 PHP
php中二维数组排序问题方法详解
2015/08/28 PHP
jQuery学习笔记之jQuery的DOM操作
2010/12/22 Javascript
一个JQuery操作Table的代码分享
2012/03/30 Javascript
JavaScript Serializer序列化时间处理示例
2014/07/31 Javascript
jquery datatable后台封装数据示例代码
2014/08/07 Javascript
JavaScript 动态加载脚本和样式的方法
2015/04/13 Javascript
通过Jquery.cookie.js实现展示浏览网页的历史记录超管用
2015/10/23 Javascript
详解JavaScript基于面向对象之继承
2015/12/13 Javascript
浅谈vue单一组件下动态修改数据时的全部重渲染
2018/03/01 Javascript
Vue中使用sass实现换肤功能
2018/09/07 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
vue cli安装使用less的教程详解
2019/07/12 Javascript
vue实现循环滚动列表
2020/06/30 Javascript
解决vue项目 build之后资源文件找不到的问题
2020/09/12 Javascript
JS中队列和双端队列实现及应用详解
2020/09/29 Javascript
用Python的urllib库提交WEB表单
2009/02/24 Python
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
使用python的pandas库读取csv文件保存至mysql数据库
2018/08/20 Python
python实现事件驱动
2018/11/21 Python
mac系统下Redis安装和使用步骤详解
2019/07/09 Python
Django model 中设置联合约束和联合索引的方法
2019/08/06 Python
Python使用urllib模块对URL网址中的中文编码与解码实例详解
2020/02/18 Python
解决pycharm安装第三方库失败的问题
2020/05/09 Python
html5模拟平抛运动(模拟小球平抛运动过程)
2013/07/25 HTML / CSS
澳大利亚优惠网站:Deals.com.au
2019/07/02 全球购物
汉米尔顿手表官网:Hamilton
2020/09/13 全球购物
专科毕业生自我鉴定
2013/12/01 职场文书
企业法人授权委托书
2014/09/25 职场文书
2014年卫生工作总结
2014/11/27 职场文书
安全保证书怎么写
2015/02/28 职场文书
无房证明样本
2015/06/17 职场文书
2016年第16个全民国防教育日宣传活动总结
2016/04/05 职场文书
阿里云ECS云服务器快照的概念以及如何使用
2022/04/21 Servers
Golang 切片(Slice)实现增删改查
2022/04/22 Golang