Vue+axios封装请求实现前后端分离


Posted in Javascript onOctober 23, 2020

本文实例为大家分享了Vue+axios封装请求实现前后端分离的具体代码,供大家参考,具体内容如下

前言

我们需要进行前后端分离开发,那么前后端的跨域问题就是无可避免的问题,前后端的请求也是无可避免的,Vue之中有一个请求组件是axios,我们可以对axios进行封装作为我们请求的工具组件

# 一、封装axios
vue.config.js 配置文件

module.exports = {
 configureWebpack: {
 resolve: {
 alias: {
 api: '@/api',
 assets: '@/assets',
 components: '@/components',
 layouts: '@/layouts',
 router: '@/router',
 store: '@/store',
 utils: '@/utils',
 views: '@/views'
 }
 }
 },
 devServer: {
 //端口
 port: 8081,
 //后端接口
 proxy: {
 '/api': {
 target: 'http://localhost:8099', // 目标代理接口地址
 changeOrigin: true, // 开启代理,在本地创建一个虚拟服务端
 // ws: true, // 是否启用websockets
 pathRewrite: {
  '^/api': ''
 }
 }
 }
 }
}

request.js,封装组件

//配置axios
import axios from 'axios'

const instance = axios.create({
 baseURL: '/api',
 timeout: 6000
})


instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'
//请求拦截器
instance.interceptors.request.use(
 function(config) {
 return config
 },
 function(error) {
 //对请求错误做些什么
 return Promise.reject(error)
 }
)
//响应拦截器
instance.interceptors.response.use(
 function(response) {
 return response.data
 },
 function(error) {
 //对响应错误做点什么
 return Promise.reject(error)
 }
)

export default function(method, url, data = '', config = '') {
 method = method.toLowerCase()
 if (method === 'post') {
 if (config !== '') {
 return instance.post(url, data, config)
 } else {
 return instance.post(url, data)
 }
 } else if (method === 'get') {
 return instance.get(url, {params: data})
 } else if (method === 'delete') {
 return instance.delete(url, {params: data})
 } else if (method === 'put') {
 return instance.put(url, data)
 } else {
 console.error('未知的method' + method)
 return false
 }
}

api.js,接口文件

import req from '@/utils/request'

/**
 * 批量查询
 * @param params
 */
export const list = params => req("get", "/resource/list", params);

具体的页面之中进行导入使用即可

总结

这就是vue中对于axios的初步封装使用,后续会持续更新

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

更多vue学习教程请阅读专题《vue实战教程》

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

Javascript 相关文章推荐
Javascript调用XML制作连动下拉列表框
Jun 25 Javascript
JQuery ztree带筛选、异步加载实例讲解
Feb 25 Javascript
javascript 常用验证函数总结
Jun 28 Javascript
Kendo Grid editing 自定义验证报错提示的解决方法
Nov 18 Javascript
最好用的Bootstrap fileinput.js文件上传组件
Dec 12 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
Dec 30 Javascript
详解javascript立即执行函数表达式IIFE
Feb 13 Javascript
详解webpack 配合babel 将es6转成es5 超简单实例
May 02 Javascript
webpack 打包压缩js和css的方法示例
Mar 20 Javascript
Vue进度条progressbar组件功能
Apr 17 Javascript
微信小程序实现之手势锁功能实例代码
Jul 19 Javascript
JavaScript代码模拟鼠标自动点击事件示例
Aug 07 Javascript
构建一个JavaScript插件系统
Oct 20 #Javascript
vue中解决微信html5原生ios虚拟键返回不刷新问题
Oct 20 #Javascript
原生js实现俄罗斯方块
Oct 20 #Javascript
React实现评论的添加和删除
Oct 20 #Javascript
基于JavaScript实现简单抽奖功能代码实例
Oct 20 #Javascript
微信小程序使用前置摄像头拍照
Oct 22 #Javascript
jQuery实现可以计算进制转换的计算器
Oct 19 #jQuery
You might like
第十节--抽象方法和抽象类
2006/11/16 PHP
php常用字符串处理函数实例分析
2014/11/22 PHP
php实现上传图片文件代码
2015/07/19 PHP
php实现的一段简单概率相关代码
2016/05/30 PHP
php注册系统和使用Xajax即时验证用户名是否被占用
2017/08/31 PHP
php使用yield对性能提升的测试实例分析
2019/09/19 PHP
jQuery中使用Ajax获取JSON格式数据示例代码
2013/11/26 Javascript
使用GruntJS构建Web程序之Tasks(任务)篇
2014/06/06 Javascript
三种取消选中单选框radio的方法
2014/09/09 Javascript
关于JS变量和作用域详解
2016/07/28 Javascript
JavaScript严格模式详解
2017/01/16 Javascript
一道面试题引发的对javascript类型转换的思考
2017/03/06 Javascript
浅谈Angular4中常用管道
2017/09/27 Javascript
AngularJs点击状态值改变背景色的实例
2017/12/18 Javascript
vue+echarts实现可拖动节点的折线图(支持拖动方向和上下限的设置)
2019/04/12 Javascript
layui 阻止图片上传的实例(before方法)
2019/09/26 Javascript
vue和小程序项目中使用iconfont的方法
2020/05/19 Javascript
vue proxy 的优势与使用场景实现
2020/06/15 Javascript
[04:23]DOTA2上海特锦赛小组赛第一日 TOP10精彩集锦
2016/02/27 DOTA
[53:03]Optic vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
python中as用法实例分析
2015/04/30 Python
python字符串,数值计算
2016/10/05 Python
Pycharm无法显示动态图片的解决方法
2018/10/28 Python
python模块之subprocess模块级方法的使用
2019/03/26 Python
plt.figure()参数使用详解及运行演示
2021/01/08 Python
html5 localStorage本地存储_动力节点Java学院整理
2017/07/06 HTML / CSS
Missguided美国官网:英国时尚品牌
2018/01/18 全球购物
Ellos瑞典官网:北欧地区时尚、美容和住宅领域领先的电子商务网站
2019/11/21 全球购物
自我鉴定四大框架
2014/01/17 职场文书
体育教师求职信
2014/05/24 职场文书
优秀应届生求职信
2014/06/16 职场文书
民政局个人整改措施
2014/09/24 职场文书
教师批评与自我批评
2014/10/15 职场文书
委托书格式要求
2015/01/28 职场文书
师范生见习总结范文
2015/06/23 职场文书
2019年鼓励无偿献血倡议书
2019/09/17 职场文书