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 相关文章推荐
在IE上直接编辑网页内容的js代码(IE地址栏js)
Apr 27 Javascript
onmouseover和onmouseout的一些问题思考
Aug 14 Javascript
jquery属性选择器not has怎么写 行悬停高亮显示
Nov 13 Javascript
js常用自定义公共函数汇总
Jan 15 Javascript
20条学习javascript的编程规范的建议
Nov 28 Javascript
使用js画图之正弦曲线
Jan 12 Javascript
JavaScript实现两个select下拉框选项左移右移
Mar 09 Javascript
jquery实现图片平滑滚动详解
Mar 22 jQuery
javascript将url解析为json格式的两种方法
Aug 18 Javascript
浅析Visual Studio Code断点调试Vue
Feb 27 Javascript
ES6 Set结构的应用实例分析
Jun 26 Javascript
vite2.0+vue3移动端项目实战详解
Mar 03 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
无线电广播的开始
2002/01/30 无线电
php中json_encode UTF-8中文乱码的更好解决方法
2014/09/28 PHP
PHP 常用的header头部定义汇总
2015/06/19 PHP
WordPress后台中实现图片上传功能的实例讲解
2016/01/11 PHP
yii使用bootstrap分页样式的实例
2017/01/17 PHP
延时重复执行函数 lLoopRun.js
2007/05/08 Javascript
Javascript 日期对象Date扩展方法
2009/05/30 Javascript
基于jquery的网页SELECT下拉框美化代码
2010/10/28 Javascript
基于jquery的分页控件(C#)
2011/01/06 Javascript
Jquery Post处理后不进入回调的原因及解决方法
2014/07/15 Javascript
javascript如何实现暂停功能
2015/11/06 Javascript
jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
2015/12/03 Javascript
html5+javascript实现简单上传的注意细节
2016/04/18 Javascript
AngularJS服务service用法总结
2016/12/13 Javascript
浅谈JavaScript的计时器对象
2016/12/26 Javascript
小程序实现左右来回滚动字幕效果
2018/12/28 Javascript
vue-cli系列之vue-cli-service整体架构浅析
2019/01/14 Javascript
mpvue性能优化实战技巧(小结)
2019/04/17 Javascript
Python中的面向对象编程详解(上)
2015/04/13 Python
Python中字符串的常见操作技巧总结
2016/07/28 Python
使用Python和xlwt向Excel文件中写入中文的实例
2018/04/21 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
python3 mmh3安装及使用方法
2019/10/09 Python
Python collections中的双向队列deque简单介绍详解
2019/11/04 Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
2020/04/01 Python
Python3 requests模块如何模仿浏览器及代理
2020/06/15 Python
质检部职责
2013/12/28 职场文书
导师就业推荐信范文
2014/05/22 职场文书
乡镇组织委员个人整改措施
2014/09/16 职场文书
村干部群众路线教育活动对照检查材料
2014/10/01 职场文书
2014年银行工作总结范文
2014/11/12 职场文书
高中生综合素质自我评价
2015/03/06 职场文书
2015年采购工作总结
2015/04/10 职场文书
2015年小学远程教育工作总结
2015/07/28 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
学困生帮扶工作总结
2015/08/13 职场文书