vue开发环境配置跨域的方法步骤


Posted in Javascript onJanuary 16, 2019

本文要实现的是:使用vue-cli搭建的项目在开发时配置跨域,上线后不做任何任何修改,接口也可以访问

production:产品 生产环境

development:开发 开发环境

1.开发环境设置跨域使用工具:

  • vue-cli自带的配置配置
  • 目录 /config/index.js

vue开发环境配置跨域的方法步骤

//自行复制黏贴
proxyTable: {
 '/apis':{
 target: 'http://10.1.63.26:19080/', // 后台api
 changeOrigin: true, //是否跨域
 // secure: true,
 pathRewrite: {
  '^/apis': '' //需要rewrite的,
 }
 }
}

注意:以上配置只有在生产环境下有效,你打包之后就不起作用了

这样就存在一个问题,你的接口都是/apis开头的,打包之后部署到服务器要去除/apis,才能正常访问后台接口,如何解决呢?

2.生产环境设置跨域

使用工具 axios 中文文档地址

思路

解决的思路是这样的:

首先,axios有一个baseURL的属性,配置了baseURL之后,你访问接口时就会自动带上

假设你vue-cli起了一个开发环境,地址为http://localhost:8080
//例1 当不设置baseURL时
axios.get('/user') //访问/user相当于访问 http://localhost:8080/user

//例2 
axios.baseURL='/apis'
axios.get('/user') //访问/user就相当于访问 http://localhost:8080/apis/user

//例3
axios.baseURL='https://sbsb.com'
axios.get('/user') //访问/user就相当于访问 https://sbsb.com/user

//例4
axios.baseURL='https://sbsb.com/apis'
axios.get('/user') //访问/user就相当于访问 https://sbsb.com/apis/user

然后我们要根据现在的环境是开发环境还是生产环境,配置不同的baseURL

//判断是否是生产环境
var isPro = process.env.NODE_ENV === 'production' //process.env.NODE_ENV用于区分是生产环境还是开发环境
//配置不同的baseURL
module.exports = {
 baseURL: isPro ? 'http://sbsb.com:8888/' : '/apis'
}

process.env.NODE_ENV用于区分是生产环境还是开发环境,这个值是webpack设置的

动手操作

假设后台api的rul是http://sbsb.com:8888/

首先在/config目录下新建一个文件,我这里叫api.config.js

写入以下代码

//判断是否是生产环境
var isPro = process.env.NODE_ENV === 'production' //process.env.NODE_ENV用于区分是生产环境还是开发环境
//根据环境不同导出不同的baseURL
module.exports = {
 baseURL: isPro ? 'http://sbsb.com:8888/' : '/apis'
}

然后,在main.js中引入axios和刚才那个文件

//main.js
import Vue from 'vue'
import axios from 'axios'
import apiConfig from '../config/api.config.js'
axios.baseURL=apiConfig.baseURL
//axios的其他配置...

这样配置之后,打包部署到服务器上也不用再手工去除/apis

如果配置过程中出现了问题,自己调试,看看访问的url正不正确

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

Javascript 相关文章推荐
js tab 选项卡
Apr 26 Javascript
根据json字符串生成Html的一种方式
Jan 09 Javascript
javascript手工制作悬浮菜单
Feb 12 Javascript
jquery插件qrcode在线生成二维码
Apr 26 Javascript
Bootstrap编写一个同时适用于PC、平板、手机的登陆页面
Jun 30 Javascript
JS实现间歇滚动的运动效果实例
Dec 22 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
Feb 16 Javascript
详解AngularJS跨页面传值(ui-router)
Aug 23 Javascript
Vue如何从1.0迁移到2.0
Oct 19 Javascript
Vue实现点击后文字变色切换方法
Feb 11 Javascript
基于Vue 撸一个指令实现拖拽功能
Oct 09 Javascript
我所理解的JavaScript中的this指向
Sep 04 Javascript
微信小程序出现wx.getLocation再次授权问题的解决方法分析
Jan 16 #Javascript
在Create React App中启用Sass和Less的方法示例
Jan 16 #Javascript
在Create React App中使用CSS Modules的方法示例
Jan 15 #Javascript
Vue 样式绑定的实现方法
Jan 15 #Javascript
在vue使用clipboard.js进行一键复制文本的实现示例
Jan 15 #Javascript
2019 年编写现代 JavaScript 代码的5个小技巧(小结)
Jan 15 #Javascript
mock.js实现模拟生成假数据功能示例
Jan 15 #Javascript
You might like
Zend Guard一些常见问题解答
2008/09/11 PHP
php 图像函数大举例(非原创)
2009/06/20 PHP
php对大文件进行读取操作的实现代码
2013/01/23 PHP
一个高效的JavaScript压缩工具下载集合
2007/03/06 Javascript
DOM_window对象属性之--clipboardData对象操作代码
2011/02/03 Javascript
浏览器常用高宽的jquery插件
2011/02/24 Javascript
阻止子元素继承父元素事件具体思路及实现
2013/05/02 Javascript
js 动态修改css文件用到了cssRule
2014/08/20 Javascript
javascript框架设计读书笔记之模块加载系统
2014/12/02 Javascript
jQuery动态效果显示人物结构关系图的方法
2015/05/07 Javascript
javascript实现验证IP地址等相关信息代码
2015/05/10 Javascript
javascript中的五种基本数据类型
2015/08/26 Javascript
论JavaScript模块化编程
2016/03/07 Javascript
微信端开发--登录小程序步骤
2017/01/11 Javascript
Vue中的混入的使用(vue mixins)
2018/06/01 Javascript
js 递归json树实现根据子id查父id的方法分析
2019/11/08 Javascript
解决微信小程序scroll-view组件无横向滚动的问题
2020/02/04 Javascript
vue 组件简介
2020/07/31 Javascript
js实现拖拽元素选择和删除
2020/08/25 Javascript
Vue指令实现OutClick的示例
2020/11/16 Javascript
python正则表达式match和search用法实例
2015/03/26 Python
Python2.X/Python3.X中urllib库区别讲解
2017/12/19 Python
python将list转为matrix的方法
2018/12/12 Python
python的sys.path模块路径添加方式
2020/03/09 Python
Django调用支付宝接口代码实例详解
2020/04/04 Python
在keras里实现自定义上采样层
2020/06/28 Python
Python threading模块condition原理及运行流程详解
2020/10/05 Python
python解包用法详解
2021/02/17 Python
免税水晶:Duty Free Crystal
2019/05/13 全球购物
PatPat香港:婴童服饰和亲子全家装在线购物
2020/09/27 全球购物
初中生自我鉴定
2014/02/04 职场文书
八一建军节营销活动方案
2014/08/31 职场文书
幼儿园小班家长评语
2014/12/30 职场文书
防暑降温通知书
2015/04/27 职场文书
一百条裙子读书笔记
2015/07/01 职场文书
Python经常使用的一些内置函数
2022/04/11 Python