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】代理服务配置的更多相关文章

  1. vue全局配置----小白基础篇

    今天学习vue全局配置.希望帮助我们去了解vue的全局配置,快速开发. Vue.config是vue的全局配置对象.包含Vue的所有全局属性: silent:boolean(默认值:false)--- ...

  2. vue环境配置 vue-cli脚手架

    vue 环境配置步骤: 第一步: 在官网下载node,Node  下载地址 http://nodejs.cn/ 并安装node.检测node是否安装成功, 按 “windows+r”  进入cmd命令 ...

  3. 如何在你的Vue项目配置vux

    做移动端项目的话vue现在是首要的选择,足够轻便,文档足够全,当然用的人多,项目中遇到的坑别人可能也遇到过,解决起来也比较方便,至于在开发中做需要的移动端组件库,个人比较推崇vux. 其实项目里组件库 ...

  4. vue环境配置脚手架环境搭建vue工程目录

    首先在初始化一个vue项目之前,我们需要下载node.js,并且安装! 下载地址: nodejs.cn/download 安装完成之后,windows+r 运行命令 cmd  输入node -v  检 ...

  5. vue路由配置,vue子路由配置

    上一篇关于vue环境配置已经写好了!按照操作就行了! 现在一个项目已经部署完成,接下来我们从路由开始! 还记得在初始化项目的时候,有提示是否需要安装vue-router,对没错,vue中路由全靠它! ...

  6. vue项目搭建和开发流程 vue项目配置ElementUI、jQuery和Bootstrap环境

    目录 一.VUE项目的搭建 1. 环境搭建 2. 项目的创建和启动 二. 开发项目 1. 配置vue项目启动功能 2. 开发vue项目 (1)项目文件的作用 (2)vue项目开发流程 (3)vue项目 ...

  7. vue如何配置路由 、获取路由的参数、部分刷新页面、缓存页面

    vue如何配置路由 .获取路由的参数.部分刷新页面.缓存页面:http://www.mamicode.com/info-detail-1941546.html vue-router传递参数的几种方式: ...

  8. 2、Vue实战-配置篇-npm配置

    引言: 如果刚开始使用 vue 并不了解 nodejs.npm 相关知识可以看我上一篇的实践,快速入门了解实战知识树. Vue实战-入门篇 上篇反思: 1.新的关注点:开发 vue 模板.如何使用本地 ...

  9. Vue插件配置和 后台交互

    Vue插件配置和 后台交互 一.全局配置静态文件(csss, js..) 1.1 全局配置css文件 创建css文件 在main.js配置css文件 // 配置全局css样式 // 方式一 impor ...

  10. vue基本配置和生命周期

    Vue的实例是Vue框架的入口,其实也就是前端的ViewModel,它包含了页面中的业务逻辑处理.数据模型等,当然它也有自己的一系列的生命周期的事件钩子,辅助我们进行对整个Vue实例生成.编译.挂着. ...

随机推荐

  1. k8s——pod的资源配置文件详解(manifest)

    pod的资源配置文件(manifest) 详细介绍pod的资源配置文件(mannifest)的各个字段的含义 元数据 字段 是否必须 类型 含义 由用户提供 备注 name 必须 str pod的名称 ...

  2. sort awk 文本处理命令

    sort: 1.将文件的每一行作为一个单位,相互比较 2.默认升序 3.以字符来进行对比,从首字符开始往后,依次按ASCII码值排序 sort 显示文件内容 (类似cat) 选项: -u 去掉重复行 ...

  3. 第一个java的应用程序

    编写java第一个程序 class HelloWorld { public static void main(String[] args){ System.out.print("Hello ...

  4. 打开TLS 1.1和1.2而不影响其他协议

    打开TLS 1.1和1.2而不影响其他协议 System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls11 ...

  5. Vue学习:8.v标签综合-强化版

    通过前几节的认识和学习,我们掌握了常用v标签的用法,这一节再来巩固提高一下吧. 实例:成绩面板 实现功能: 主体由两大部分组成:表格+表单.这个表格可以显示多科成绩,并具有表头.删除以及底部统计功能. ...

  6. List<Map<String, Object>> 按照时间排序

    // 准备一个集合 List<Map<String, Object>> resList= Lists.newArrayList(); Map<String, Object ...

  7. Redis的特点什么是?

    a.支持多种数据结构,如 string(字符串). list(双向链表).dict(hash表).set(集合).zset(排序set).hyperloglog(基数估算) b.支持持久化操作,可以进 ...

  8. JVM垃圾回收器(详解)

    引言 垃圾回收(GC,Garbage Collection) 在笔者上一篇文章中(JVM内存模型),介绍了JVM内存模型以及JVM运行时的数据区,堆是JVM内存区域里面最大的一块区域,用于存放实例数据 ...

  9. 构建SaaS能力,加速数字化转型!猪齿鱼将在华为云快成长直播间开讲!

    时代的浪潮驱动着企业数字化转型.伴随着新基建.云计算成为国家战略的重要环节之一,"千行百业"开始专注于数字化转型,企业纷纷使用软件提升研发.销售.市场.消费者等不同场景下的效率,S ...

  10. 未能加载文件或程序集“netstandard,Version=2.0.0.0, Culture=neutral,PublicKeyToken=cc7b13ffcd2ddd51”或它的某一个依赖项 解决

    未能加载文件或程序集"netstandard,Version=2.0.0.0, Culture=neutral,PublicKeyToken=cc7b13ffcd2ddd51"或它 ...