如何在webpack-React应用中获取URL实现单WAR包多环境部署
问题说明
我的问题可能较为基础,还请各位不吝赐教。
项目背景
我负责的项目包含多个Java后端服务与1个React前端应用,全量构建整个解决方案后会生成WAR包,将该WAR包部署到不同服务器即可加载运行应用。
核心需求
需要实现不区分部署环境,仅生成单个WAR包即可适配所有环境的部署要求。
现存问题
我们无法为不同环境维护独立构建脚本、生成对应环境的WAR包,因此提前写入不同环境配置值的方案不可行,唯一可行思路是运行时读取URL并使用,但构建生成WAR包的阶段无法获取部署后的URL信息。
不同环境URL示例:
- 环境1 URL:
https/abcdefg.com/abc/rma/.... - 环境2 URL:
https/abcdefg.com/def/rma/....
此前我们在env文件中配置application_context字段,部署前根据目标环境修改该值。目前我不清楚在webpack构建阶段无法获取URL的前提下如何更新该配置,也不清楚是否可在React应用侧实现该逻辑、具体实现方式是什么。当前如果将适配环境1构建的WAR包部署到环境2,会出现如下报错:
GET https/abcdefg.com/abc/rma/script/react-app/vendor/js/index.min.js net::ERR_ABORTED 404
内容的提问来源于stack exchange,提问作者user3458749
相关产品推荐
相关产品推荐

