vue(2.x,3.0)配置跨域代理


Posted in Javascript onNovember 27, 2019

导语:首先,每一个前端开发人员都应该知道同源策略,同源策略是浏览器的一个安全功能,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源,所谓同源是指,域名,协议,端口相同。有一个不同时,都将请求不到资源,将无法“跨域”获取资源。

vue(2.x,3.0)配置跨域代理

vue3.0

从最新版开始,首先是在所有请求的文件中写好请求

import Vue from 'vue'
import axios from 'axios'
import VueAxios from 'vue-axios'

Vue.use(VueAxios, axios)

let apiCrfCod = Vue.axios.create({
 method: 'GET',
 baseURL: '/apis/' 
})

let apiResource = Vue.axios.create({
 method: 'GET',
 baseURL: '/service/'
})

getServiceChannels: (opts) => {
 return apiCrfCod({
  url: '/rest/collection/getService/XXXX', // 此处写地址,不具体举例
  params: {
  ...opts
  }
 })
 }

在vue.config.js中配置代理

module.exports = {
 baseUrl: '',
 outputDir: 'dist',
 devServer: {
 // 配置服务器代理
 proxy: {
  "/apis": { // 代理接口前缀为/apis的请求
  "target": 'https://www.baidu.com/', // 对应的代理地址
  "secure": false, // 接受运行在https上,默认不接受
  "changeOrigin": true, // 如果设置为true,那么本地会虚拟一个服务器接收你的请求并代你发送该请求,这样就不会有跨域问题(只适合开发环境)
  "pathRewrite": { //重写路径 比如'/apis/aaa/ccc'重写为'/aaa/ccc'
   '^/apis': ''
   }
  },
  // 配置多个代理
  "/service": {
  "target": 'https://www.google.com/',
  "secure": false,
  "changeOrigin": true,
  },
 }
 },
}

vue2.X

请求还是按上述代码,下面是配置代理部分

在config文件夹下的index.js中,配置proxyTable,原本的proxyTable中为空

vue(2.x,3.0)配置跨域代理

proxyTable: {
  '/apis': {
  target: "https://www.baidu.com/", // 目标地址
  changeOrigin: true, // 是否跨域
  pathRewrite: { // 重定向地址
   '^/apis': ''
   }
  }
 },

上述就是vue3.0和2.x的配置跨域部分,记得配置完代理需重启项目!!!

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

Javascript 相关文章推荐
简单方法判断JavaScript对象为null或者属性为空
Sep 26 Javascript
jQuery简单实现网页选项卡特效
Nov 24 Javascript
Javascript动画的实现原理浅析
Mar 02 Javascript
jQuery实现图片左右滚动特效
Apr 20 Javascript
微信QQ的二维码登录原理js代码解析
Jun 23 Javascript
使用ajaxfileupload.js实现上传文件功能
Aug 13 Javascript
vue2.0实现音乐/视频播放进度条组件
Jun 06 Javascript
vue 项目地址去掉 #的方法
Oct 20 Javascript
Vue动态生成el-checkbox点击无法赋值的解决方法
Feb 21 Javascript
基于vue框架手写一个notify插件实现通知功能的方法
Mar 31 Javascript
JS实现返回上一页并刷新页面的方法分析
Jul 16 Javascript
javascript实现简单留言板案例
Feb 09 Javascript
微信小程序加载机制及运行机制图解
Nov 27 #Javascript
webgl实现物体描边效果的方法介绍
Nov 27 #Javascript
three.js利用卷积法如何实现物体描边效果
Nov 27 #Javascript
Angular8引入百度Echarts进行图表分析的实现代码
Nov 27 #Javascript
vue实现浏览器全屏展示功能
Nov 27 #Javascript
js中apply和call的理解与使用方法
Nov 27 #Javascript
vue-cli在 history模式下的配置详解
Nov 26 #Javascript
You might like
如何在WIN2K下安装PHP4.04
2006/10/09 PHP
实用函数5
2007/11/08 PHP
解析php获取字符串的编码格式的方法(函数)
2013/06/21 PHP
浅析PHP微信支付通知的处理方式
2014/05/25 PHP
php集成环境xampp中apache无法启动问题解决方案
2014/11/18 PHP
PHP实现WebService的简单示例和实现步骤
2015/03/27 PHP
PHP统一页面编码避免乱码问题
2015/04/09 PHP
Extjs中ComboBox加载并赋初值的实现方法
2012/03/22 Javascript
js去字符串前后空格5种实现方法及比较
2013/04/03 Javascript
jQuery动态地获取系统时间实现代码
2013/05/24 Javascript
js验证输入是否为手机号码或电话号码示例
2013/12/30 Javascript
网站繁简切换的JS遇到页面卡死的解决方法
2014/03/12 Javascript
控制台报错object is not a function的解决方法
2014/08/24 Javascript
jQuery插件DataTable使用方法详解(.Net平台)
2016/12/22 Javascript
bootstrap3中container与container_fluid外层容器的区别讲解
2017/12/04 Javascript
Angular2整合其他插件的方法
2018/01/20 Javascript
Angular5.0 子组件通过service传递值给父组件的方法
2018/07/13 Javascript
nodejs 使用http进行post或get请求的实例(携带cookie)
2019/01/03 NodeJs
javascript canvas实现简易时钟例子
2020/09/05 Javascript
原生JS实现弹幕效果的简单操作指南
2020/11/10 Javascript
JavaScript实现点击切换验证码及校验
2021/01/10 Javascript
[00:02]DOTA2新版本使用PA至宝后暴击展示
2014/11/19 DOTA
[01:01:24]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第三局
2016/02/25 DOTA
Python之csv文件从MySQL数据库导入导出的方法
2018/06/21 Python
python获取指定字符串中重复模式最高的字符串方法
2018/06/29 Python
python跳过第一行快速读取文件内容的实例
2018/07/12 Python
使用numba对Python运算加速的方法
2018/10/15 Python
运行tensorflow python程序,限制对GPU和CPU的占用操作
2020/02/06 Python
Python基于模块Paramiko实现SSHv2协议
2020/04/28 Python
python爬取天气数据的实例详解
2020/11/20 Python
俄罗斯EPL钻石珠宝店:ЭПЛ
2019/10/22 全球购物
民族学专业求职信
2014/07/28 职场文书
2014教师“四风问题”对照检查材料思想汇报
2014/09/16 职场文书
工地材料员岗位职责
2015/04/11 职场文书
送给小学生的暑假礼物!小学生必背99首古诗
2019/07/02 职场文书
golang正则之命名分组方式
2021/04/25 Golang