Vue项目前后端联调(使用proxyTable实现跨域方式)


Posted in Javascript onJuly 18, 2020

vue本地项目调试线上接口出现跨域问题

使用方法:vue在配置文件中提供了proxyTable来设置跨域,在config文件夹的index.js文件中

dev: { //开发环境下

  // 静态资源文件夹
  assetsSubDirectory: 'static',

  // 发布路径
  assetsPublicPath: '/',

  // 代理配置表,在这里可以配置特定的请求代理到对应的API接口
  // 例如将'localhost:8080/api/xxx'代理到'http://xxxxxxx.com/xxx'
  proxyTable: {
   '/api': {
    target: 'http://xxxxxx.com', // 接口的域名
    // secure: false, // 如果是https接口,需要配置这个参数
    changeOrigin: true, // 如果接口跨域,需要进行这个参数配置
    pathRewrite: {
     '^/api': '', // 这种接口配置出来 http://xxxxxx.com:8080/xxx
    }
   }
  }
}

关于pathRewrite中'^/api'的作用:

用代理, 首先你得有一个标识, 告诉他你这个连接要用代理. 不然的话, 可能你的 html, css, js这些静态资源都跑去代理. 所以我们只要接口用代理, 静态文件用本地。

'/api': {}, 就是告诉node, 我接口只要是'/api'开头的才用代理.所以你的接口就要这么写 /api/xx/xx. 最后代理的路径就是 http://xxxxxx.com/api/xx/xx.

可是不对啊, 我正确的接口路径里面没有/api啊. 所以就需要 pathRewrite,用''^/api'':'', 把'/api'去掉, 这样既能有正确标识, 又能在请求接口的时候去掉api

补充知识:vue2./vue.3.x实现跨域(proxytable/proxy)

vue2.x

config/index.js

proxyTable: {
   '/api': {
    target: 'http://localhost:3000/', // 请求的接口的域名
    // secure: false, // 如果是https接口,需要配置这个参数
    changeOrigin: true, // 如果接口跨域,需要进行这个参数配置
    pathRewrite: {
     '^/api': ''
    }
   }
  },

vue3.x

vue.config.js

module.exports = {
  devServer: {
   proxy: {
    '/api': {
     target: 'http://localhost:8080/',
     changeOrigin: true,
     ws: true,
     pathRewrite: {
      '^/api': '/static/mock'
     }
    }
   }
  }
 }

以上这篇Vue项目前后端联调(使用proxyTable实现跨域方式)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS小框架 fly javascript framework
Nov 26 Javascript
杨氏矩阵查找的JS代码
Mar 21 Javascript
解析Javascript中大括号“{}”的多义性
Dec 02 Javascript
jQuery使用attr()方法同时设置多个属性值用法实例
Mar 26 Javascript
基于javascript实现单选及多选的向右和向左移动实例
Jul 25 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
Nov 24 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
Mar 13 Javascript
React应用中使用Bootstrap的方法
Aug 15 Javascript
JS基于for语句编写的九九乘法表示例
Jan 04 Javascript
小程序点餐界面添加购物车左右摆动动画
Sep 23 Javascript
Openlayers实现测量功能
Sep 25 Javascript
vue+flask实现视频合成功能(拖拽上传)
Mar 04 Vue.js
完美解决通过IP地址访问VUE项目的问题
Jul 18 #Javascript
Vue移动端项目实现使用手机预览调试操作
Jul 18 #Javascript
vue中移动端调取本地的复制的文本方式
Jul 18 #Javascript
vue中用 async/await 来处理异步操作
Jul 18 #Javascript
vue 使用async写数字动态加载效果案例
Jul 18 #Javascript
vue-router为激活的路由设置样式操作
Jul 18 #Javascript
解决Vue @submit 提交后不刷新页面问题
Jul 18 #Javascript
You might like
全国中波电台频率表
2020/03/11 无线电
php self,$this,const,static,->的使用
2009/10/22 PHP
CI框架AR数据库操作常用函数总结
2016/11/21 PHP
php使用变量动态创建类的对象用法示例
2017/02/06 PHP
PHP安装memcache扩展的步骤讲解
2019/02/14 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
2019/11/23 PHP
jQuery打印图片pdf、txt示例代码
2014/07/22 Javascript
Node.js实现Excel转JSON
2015/04/24 Javascript
在Node.js应用中使用Redis的方法简介
2015/06/24 Javascript
关于js里的this关键字的理解
2015/08/17 Javascript
JavaScript 常见安全漏洞和自动化检测技术
2015/08/21 Javascript
jquery动画效果学习笔记(8种效果)
2015/11/13 Javascript
全面解析Bootstrap图片轮播效果
2015/12/03 Javascript
js微信支付实现代码
2016/12/22 Javascript
用Nodejs搭建服务器访问html、css、JS等静态资源文件
2017/04/28 NodeJs
js 获取元素的具体样式信息getcss(实例讲解)
2017/07/05 Javascript
JavaScript中如何判断一个值的类型
2017/09/15 Javascript
ES6中Class类的静态方法实例小结
2017/10/28 Javascript
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
微信小程序实现动态显示和隐藏某个控件功能示例
2018/12/14 Javascript
vue-cli3跨域配置的简单方法
2019/09/06 Javascript
vue项目实现图片上传功能
2019/12/23 Javascript
Vue组件间数据传递的方式(3种)
2020/07/13 Javascript
解决Vue的文本编辑器 vue-quill-editor 小图标样式排布错乱问题
2020/08/03 Javascript
[05:08]2014DOTA2国际邀请赛 Hao专访复仇的胜利很爽
2014/07/15 DOTA
Python简单连接MongoDB数据库的方法
2016/03/15 Python
实例解析Python的Twisted框架中Deferred对象的用法
2016/05/25 Python
让你相见恨晚的十个Python骚操作
2020/11/18 Python
Kneipp克奈圃美国官网:德国百年精油配方的传承
2018/02/07 全球购物
在线购买世界上最好的酒:BoozeBud
2018/06/07 全球购物
斯福泰克软件测试面试题
2015/02/16 面试题
阳光体育活动实施方案
2014/05/25 职场文书
绘画专业自荐信
2014/07/04 职场文书
大学生个人求职信例文
2014/07/07 职场文书
2015年财务人员工作总结
2015/04/10 职场文书
绿色环保倡议书
2015/04/28 职场文书