react如何配置代理规则
Admin 2023-04-03 群英技术资讯 558 次浏览
在这篇文章中我们来了解一下“react如何配置代理规则”,一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
在package.json 中追加如下配置
"proxy":"http://localhost:5000"
说明:
优点: 配置简单,前端请求资源时可以不加任何前缀。
缺点:不能配置多个代理
工作方式: 当请求了 3000 不存在的资源时,那么该请求会转发给5000(优先匹配前端资源)
创建代理配置文件,文件名为 setupProxy.js 名字不能改
在src下创建配置文件: src/setupProxy.js
编写setupProxy.js 配置具体代理规则:
const proxy = require('http-proxy-middleware') module.exports = function(app) { app.use( proxy('/api1',{ // api1 是需要转发的请求(所有带有 /api1 前缀的请求都会转发给 5000) target: 'http://localhost:5000', // 配置转发目标地址(返回数据的服务器地址) changeOrigin: true, // 控制服务器接收到的请求头中 host字段的值 /** changeOrigin为 true时,服务器收到的请求头中的host为: localhost:5000; changeOrigin 为 false 时,服务器收到的请求头中的 host 为; localhost:3000; changeOrigin默认为false,但是一般将 changeOrigin 值设置为 true */ pathRewrite:{ '^/api1':'' // 去除请求前缀,保证交给后台服务器的是正常的请求地址(必须配置) } }), proxy('/api2',{ target: 'http://localhost:5001', changeOrigin: true, pathRewrite:{ '^/api2':'' } }) ) }
说明:
优点:可以配置多个代理,可以灵活的控制请求是否走代理,
缺点: 配置繁琐,前端请求资源时必须加前缀
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
方法:1、利用“$(input元素)”语句获取所有的input元素对象;2、利用prop()方法和disabled属性让获取到的input元素失效即可,语法为“input元素对象.prop("disabled","disabled");”。
这篇文章主要为大家详细介绍了jQuery实现表单验证功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章我们来简单的了解一下vue3中watcheffect的用途与使用,首先watch和watchEffect都是监听器,但是watch和watchEffect在写法和使用上都有一定的区别,因为为了便于大家理解,下面小编就给大家来讲讲。
本篇文章给大家带来了关于javascript的相关知识,其中主要整理了异步与回调的基本概念的相关问题,同步,一般指按照预定的顺序依次执行任务,只有当上一个任务完成后,才开始执行下一个任务,异步,与同步相对应,异步指的是让CPU暂时搁置当前任务,先处理下一个任务,当收到上个任务的回调通知后,再返回上个任务继续执行,下面一起来看一下,希望对大家有帮助。
JavaScript封装弹框插件的方法 JavaScript封装弹框插件的具体代码,供大家参考,具体内容如下 知识点1.document.querySelector() 方法 querySelector() 方法返回文档中匹配指定 CSS 选择器的一个元素.注意: querySelector() 方法仅仅返回匹配指定选择器的第一个元素.如果你需要返回所有的元素,请使用 querySelectorAll() 方法替代.querySelectorAll() 方法返回文档中匹配指定 CSS 选择器的所有元素,返回 [NodeList] 对象
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008