【Vue】代理服务配置
Springboot 后台接口地址
基础路径配置:
server:
port: 8080
servlet:
context-path: /demo
完整路径:
localhost:8080/demo
Vue无代理服务配置
.env.development文件配置后台接口和对应path
# just a flag
ENV = 'development' # base api
VUE_APP_BASE_DOMAIN = 'http://localhost:8080'
VUE_APP_BASE_API = '/demo'
在utils/request.js文件中,更改基础地址:
import axios from 'axios'
import { MessageBox, Message } from 'element-ui'
import store from '@/store'
import { getToken } from '@/utils/auth' /**
* create an axios instance
* 创建 axios实例
* @type {AxiosInstance} axios实例
*/
const service = axios.create({
baseURL: process.env.VUE_APP_BASE_DOMAIN + process.env.VUE_APP_BASE_API, // url = base url + request url
// withCredentials: true, // send cookies when cross-domain requests
timeout: 5000 // 请求超时时间 request timeout
})
npm run dev 重启后 接口就是请求后台的了
但是没有配置代理服务,请求会出现一个问题:每个请求都会附带一个[OPTION]预检请求
开发的时候混在一起调试很麻烦
Vue 代理服务配置
定义目标接口,目标API的路径,和代理路径
# just a flag
ENV = 'development' # base api
VUE_APP_BASE_DOMAIN = 'http://localhost:8080'
VUE_APP_BASE_API = '/demo'
VUE_APP_PROXY_API = '/proxy-api'
Request.js只需要填写代理路径,默认拼接web地址为前缀
import axios from 'axios'
import { MessageBox, Message } from 'element-ui'
import store from '@/store'
import { getToken } from '@/utils/auth' /**
* create an axios instance
* 创建 axios实例
* @type {AxiosInstance} axios实例
*/
const service = axios.create({
baseURL: process.env.VUE_APP_PROXY_API, // url = base url + request url
// withCredentials: true, // send cookies when cross-domain requests
timeout: 5000 // 请求超时时间 request timeout
})
Vue.config.js配置devServer时,追加代理配置:
devServer: {
port: port,
open: true,
overlay: {
warnings: false,
errors: true
},
/* 配置代理服务,解决接口跨域访问问题 */
proxy: {
/* 匹配所有以[代理路径]开头的路径 */
[process.env.VUE_APP_PROXY_API]: {
/* 代理目标的基础路径 就是实际后台接口 */
target: process.env.VUE_APP_BASE_DOMAIN,
/* 路径重写,匹配[代理路径]开头的字符串,并把[代理路径]替换为空字符串 路径重写时把[代理路径]替换回[实际Api路径] */
pathRewrite: { [`^${process.env.VUE_APP_PROXY_API}`]: process.env.VUE_APP_BASE_API },
/* 支持websocket */
ws: true,
/* 请求来自于。即控制请求头中host数据。默认为true说谎:来自8080; false如实回答来自代理服务器8081 */
changeOrigin: true
}
}
/* 不使用mockJS的接口数据 */
/* before: require('./mock/mock-server.js') */
},
【Vue】代理服务配置的更多相关文章
- vue全局配置----小白基础篇
今天学习vue全局配置.希望帮助我们去了解vue的全局配置,快速开发. Vue.config是vue的全局配置对象.包含Vue的所有全局属性: silent:boolean(默认值:false)--- ...
- vue环境配置 vue-cli脚手架
vue 环境配置步骤: 第一步: 在官网下载node,Node 下载地址 http://nodejs.cn/ 并安装node.检测node是否安装成功, 按 “windows+r” 进入cmd命令 ...
- 如何在你的Vue项目配置vux
做移动端项目的话vue现在是首要的选择,足够轻便,文档足够全,当然用的人多,项目中遇到的坑别人可能也遇到过,解决起来也比较方便,至于在开发中做需要的移动端组件库,个人比较推崇vux. 其实项目里组件库 ...
- vue环境配置脚手架环境搭建vue工程目录
首先在初始化一个vue项目之前,我们需要下载node.js,并且安装! 下载地址: nodejs.cn/download 安装完成之后,windows+r 运行命令 cmd 输入node -v 检 ...
- vue路由配置,vue子路由配置
上一篇关于vue环境配置已经写好了!按照操作就行了! 现在一个项目已经部署完成,接下来我们从路由开始! 还记得在初始化项目的时候,有提示是否需要安装vue-router,对没错,vue中路由全靠它! ...
- vue项目搭建和开发流程 vue项目配置ElementUI、jQuery和Bootstrap环境
目录 一.VUE项目的搭建 1. 环境搭建 2. 项目的创建和启动 二. 开发项目 1. 配置vue项目启动功能 2. 开发vue项目 (1)项目文件的作用 (2)vue项目开发流程 (3)vue项目 ...
- vue如何配置路由 、获取路由的参数、部分刷新页面、缓存页面
vue如何配置路由 .获取路由的参数.部分刷新页面.缓存页面:http://www.mamicode.com/info-detail-1941546.html vue-router传递参数的几种方式: ...
- 2、Vue实战-配置篇-npm配置
引言: 如果刚开始使用 vue 并不了解 nodejs.npm 相关知识可以看我上一篇的实践,快速入门了解实战知识树. Vue实战-入门篇 上篇反思: 1.新的关注点:开发 vue 模板.如何使用本地 ...
- Vue插件配置和 后台交互
Vue插件配置和 后台交互 一.全局配置静态文件(csss, js..) 1.1 全局配置css文件 创建css文件 在main.js配置css文件 // 配置全局css样式 // 方式一 impor ...
- vue基本配置和生命周期
Vue的实例是Vue框架的入口,其实也就是前端的ViewModel,它包含了页面中的业务逻辑处理.数据模型等,当然它也有自己的一系列的生命周期的事件钩子,辅助我们进行对整个Vue实例生成.编译.挂着. ...
随机推荐
- 590. N 叉树的后序遍历 | Javascript 递归实现
题目 题目链接:590. N 叉树的后序遍历 解题思路 递归后续遍历,正常的思路 然后有一个要注意的地方就是如果js定义了全局变量来存储结果,每次调用函数之前一定要记得清空,否则答案会带上之前的结果. ...
- Lecture5
Smiling & Weeping ---- 在街上看到长得和你相似的人时 我心中的那股雀跃 请你至少同情一下吧 第五章 Git 内部原理 5.0 引言 本章相对独立,从底层出发带你了解Git ...
- Libgdx游戏开发(5)——碰撞反弹的简单实践
原文: Libgdx游戏开发(5)--碰撞反弹的简单实践-Stars-One的杂货小窝 本篇简单以一个小球运动,一步步实现碰撞反弹的效果 本文代码示例以kotlin为主,且需要有一定的Libgdx入门 ...
- 技嘉BIOS超频设置操作路径
关闭超线程 频率电压控制 > 进阶处理器设置 > Hyper_THreading 关小核心 频率电压控制 > GIGABYTE PerfDrive > Ecore Disabl ...
- injectionIII iOS代码注入工具(下)
injectionIII iOS代码注入工具(下) 本文将解决如何使用injectionIII对主页热重载,如果对injectionIII不了解的同学请回到上篇查看 Vaccine 简单地说Vacci ...
- FFmpeg新旧接口对照使用一览
背景 根据例程学习调用ffmpeg 库方法的时候,发现了一堆警告. main.cpp:81:37: warning: 'AVStream::codec' is deprecated [-Wdeprec ...
- 《DNK210使用指南 -CanMV版 V1.0》第三章 CanMV简介
第三章 CanMV简介 1)实验平台:正点原子DNK210开发板 2) 章节摘自[正点原子]DNK210使用指南 - CanMV版 V1.0 3)购买链接:https://detail.tmall.c ...
- Spring MVC 中使用 RESTFul 编程风格
1. Spring MVC 中使用 RESTFul 编程风格 @ 目录 1. Spring MVC 中使用 RESTFul 编程风格 2. RESTFul 编程风格 2.1 RESTFul 是什么 2 ...
- P6655 题解
直接计数其实不好记,不如计数转期望. 令 \(f_i\) 表示点 \(i\) 成为制高点概率,不难发现期望就是 \(\sum f_i\). 根据定义对于 \(f\) 我们有如下转移 \(f_i = \ ...
- JavaScript -- 运算符--手稿