位置: IT常识 - 正文

使用Vue脚手架配置代理服务器的两种方式(vue脚手架配合springsecurity)

编辑:rootadmin
使用Vue脚手架配置代理服务器的两种方式 1 前言

推荐整理分享使用Vue脚手架配置代理服务器的两种方式(vue脚手架配合springsecurity),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue脚手架配置webpack,vue脚手架配置,vue脚手架配置eval-source-map,vue脚手架配置文件,vue脚手架配置,vue脚手架配置文件,vue脚手架配置,vue脚手架配置文件,内容如对您有帮助,希望把文章链接给更多的朋友!

本文主要介绍使用Vue脚手架配置代理服务器的两种方式

注意:Vue脚手架给我们提供了两种配置代理服务器的方式,各有千秋,使用的时候只能二选一,不能同时使用

2 代理

除了cros和jsonp,还有一种代理方式,这种用的相对来说也很多, 一般代理服务器

这个概念很好理解,相当于生活中的中介

在前后端直接配置一个代理服务器,这个代理服务器和前端处于一个位置,当前端向后端请求数据的时候,不会直接访问后端,而是找这台代理,代理收到前端的请求,转发给后端,如果收到后端的响应数据,就把这些数据返回给前端

代理服务器的方式有一个东西大家应该都听说过:nginx,但是nginx一般属于后端人员掌握的,这里使用一种对前端人员更加友好的技术:cli,没错,就是vue的脚手架,它就可以帮助我们代理服务器,相比nginx它简单的不能再简单了,只需要短短几行代码就可以搞定

vue脚手架配置方式1

既然想对脚手架进行配置,肯定要改一个文件,就是vue的配置文件:vue.config.js,肯定要在这里面写代码,然后代理服务器就开起来了,到底怎么写,可以参考官方文档:Vue脚手架代理 复制配置代码进行修改配置文件

注意:这里的端口是要请求后端的端口,并且只需要写到端口即可,我的后端端口是9090

// 开启代理服务器devServer: { // 代理的端口是要请求后端的端口 写到具体的端口即可 不需要写具体的路径 proxy: 'http://localhost:9090'}

注意:这种代理简单,但是不完美,原因在下面

这样就配置了一个代理服务器,一定要重启脚手架

重启完成后再次访问,还是报错跨域问题!

注意:虽然已经配置了代理服务器,但是还没用到这个代理,所以请求的时候不应该是后端的端口9090,而是代理的端口8080,这里就要写全路径了,不能和配置代理服务器的时候一样只写端口了 再次访问,发现正常了,说明代理有效

这种代理有两个误区(坑),下面一一说明

两个误区(坑)误区1

不能灵活的控制到底走不走代理

首先,这种代理不是什么都会代理给后端的,如果代理的东西前端有,就会直接返回,就不去找后端,比如下面这个例子

使用Vue脚手架配置代理服务器的两种方式(vue脚手架配合springsecurity)

我在public目录写一个叫queryUserInfo的文件,没错,和后端的接口名称一样 这时候请求就会发现,找到前端的内容就不会访问后端了

误区2

这种代理只能代理一个服务器不能代理多个服务器,也就是说目前代理的8080只能把请求交给9090,不能转发给别人了

vue脚手架配置方式2

上面的代理方式,虽然简单,但是也有两个坑,不够完美,想要追求完美,还得是这种方式

那么这种方式怎么写呢?还是继续看官方文档:Vue脚手架代理

注意:这种配置代理和上面的配置代理只能二选一,不能同时使用! 把代码复制到配置文件,进行修改

devServer: {proxy: {'/api': {target: '<url>',ws: true,changeOrigin: true},'/foo': {target: '<other_url>'}}}

这里面有一些属性,有的属性可以配置使用,我们一一说明

注意:不管修改哪个属性,都要重启vue!

/api和target

/api指的是请求前缀 这里的api可以更改 不一定非要叫api

target指的是如果请求前缀匹配上了,那么就找代理服务器请求

比如现在我请求的路径不变还是上面的路径 那么还是一样的效果

这时候我把api前缀加上,理论来说可以了,但是还是不行 不过这次不是跨域的问题了,只是找不到请求

找不到请求是对的,因为的后端请求没有/api的前缀,那么如果忽略这个前缀呢?

pathRewrite

有这么一个属性,官方没有说:pathRewrite

// 忽略前缀路径 它是一个对象 里面是key value // 这个正则意思是 如果前缀是/api,那么会替换成空字符 pathRewrite:{'^/api':''}

这个时候再测试,发现正常

ws

ws是websocket的缩写,用于支持websocket,默认为true,本人对websocket不是很了解,所以不多叙述!

changeOrigin

用于控制请求头中的host值

或者说是否真实汇报自身情况 true不真实 false真实 一般为true,默认也是true

为什么这么说呢?我们通过下面案例查看,这时候我后端获取请求的主机信息,大家注意观察 改为false,好家伙,你小子反水是吧

配置多个代理

如果想要配置多个代理,直接复制一个即可,注意加上逗号,修改端口和前缀

3 vue脚手架配置代理总结vue脚手架配置代理方法一在vue.config.js中添加如下配置:devServer:{ proxy:"http://localhost:5000"}说明:1. 优点:配置简单,请求资源时直接发给前端(8080)即可。2. 缺点:不能配置多个代理,不能灵活的控制请求是否走代理。3. 工作方式:若按照上述配置代理,当请求了前端不存在的资源时,那么该请求会转发给服务器 (优先匹配前端资源)方法二编写vue.config.js配置具体代理规则:module.exports = { devServer: { proxy: { '/api1': {// 匹配所有以 '/api1'开头的请求路径 target: 'http://localhost:5000',// 代理目标的基础路径 changeOrigin: true, pathRewrite: {'^/api1': ''} }, '/api2': {// 匹配所有以 '/api2'开头的请求路径 target: 'http://localhost:5001',// 代理目标的基础路径 changeOrigin: true, pathRewrite: {'^/api2': ''} } } }}/* changeOrigin设置为true时,服务器收到的请求头中的host为:localhost:5000 changeOrigin设置为false时,服务器收到的请求头中的host为:localhost:8080 changeOrigin默认值为true*/说明:1. 优点:可以配置多个代理,且可以灵活的控制请求是否走代理。2. 缺点:配置略微繁琐,请求资源时必须加前缀。
本文链接地址:https://www.jiuchutong.com/zhishi/300063.html 转载请保留说明!

上一篇:HttpServletRequest 获取参数

下一篇:【Vue全家桶】新一代的状态管理--Pinia(vue全家桶教程)

  • 什么是消费税的计税销售额?价外费用是什么?
  • 新公司个税申报怎么操作
  • 一般纳税人增值税优惠政策2023
  • 实收资本在报表中怎么看
  • 劳务公司交企业所得税吗
  • 入账成本会计分录
  • 金税盘忘了清盘怎么办
  • 企业的哪些活动对企业有长期影响呢
  • 房产原值怎么计算房产面积
  • 营改增计算举例
  • 律师行业税务如何做账
  • 无偿划转财政厅
  • 资产损失类型有哪些
  • 公司买房需要交房产税吗
  • 酒店客房主营业务支出明细表怎么写
  • 航天服务费手写发票可以抵减吗?
  • 营改增后二手房转让 一般计税 可以差额
  • 增值税申报尾差怎么做账
  • 企业所得税减免所得税额怎么算
  • 小规模纳税人销售收入会计分录
  • 政府专项拨款账务处理
  • 报纸公示具有什么法律效应
  • 事业单位工资及薪酬好的单位有哪些
  • win10怎么设置硬盘为第一启动项
  • 专用发票怎样申报
  • php header Content-Type类型小结
  • 中拍网拍卖
  • 谈谈cookie的弊端
  • thinkphp登录
  • php7 数组
  • php数组拼接成字符串
  • 承兑贴现会计分录怎么做
  • nginx gui
  • php生成csv文件
  • php socketio
  • 普通发票还要交增值税吗
  • 出口退税率和进项税额
  • 员工工资属于什么会计科目
  • 企业计提养老保险分录
  • 2.MyBatis
  • 本月确认收入 发票下月开
  • Discus X 3 门户改造熊掌号网页教程
  • 其他应付款二级明细科目有哪些
  • 电子承兑被退回要重新背书怎么办
  • 股东分红账务处理表格
  • 职业年金是什么意思?退休后怎么算职业年金?
  • 合同履约成本如何设置明细科目
  • 建筑企业预缴所得税税率是多少
  • 本年度发票一定要收回吗
  • 应付职工薪酬如何结转
  • 应付账款期初期末
  • 小规模企业税金怎么做账
  • 纳税人销售免税产品开具专票
  • 什么是利润表?其作用有哪些?
  • 出口未报关收到外汇怎样处理
  • mysql中注释
  • apt-get update错误
  • Fedora Core 4.0 安装图解
  • 索尼vaio笔记本无法开机
  • 深度u盘装xp系统教程
  • 新买的读卡器不读卡,提示放入驱动盘
  • linux进程管理实验总结
  • windows7回收站图标没了
  • win102h20
  • linux重复命令
  • mpcmdrun.exe是什么进程
  • hyper-v win98
  • android app启动过程
  • jquery.ui
  • python利用csv模块在对csv文件进行操作
  • 新浪微博模仿推特
  • js定时器有哪些,区别及用法
  • Python 正则表达式的高级用法
  • jquery怎么写轮播图
  • javascript编程技术
  • python django orm
  • 国家税务局什么时候放假
  • 电信宽带欠费滞纳金最多减免多少?
  • 精准扶贫的实践与探索经验
  • 加强监督管理工作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设