javascript - 带有内部 React 的 Spring Boot - 以正确的方式传递 ENV

标签 javascript java reactjs spring deployment

我面临将系统 ENV 传递给 JS 应用程序的问题,它是 Spring Boot 应用程序的内部部分:子项目,在构建期间进行处理,然后传递给 Java 应用程序的元数据。 一切正常,除了 ENV 变量完全不影响 JS 应用程序。在 Java 方面,一切都很好,但无论我用什么来操纵系统环境,它都不起作用。我试过:

  • 将其导出为用户的环境
  • 将其作为参数添加到应用程序:java -DENV_NAME=abcd app.jar
  • 创建 .env 文件

您是否遇到过同样的问题并找到了可行的解决方案? 这里还有一个重要的注意事项:对于 JS 构建过程,我正在使用 parcel

我想要的状态是,当我更改 ENV 时,在 .jar 中运行并运行的 JS 可以对此更改使用react(例如凭据)

最佳答案

好的,在我们公司进行了一些头脑 Storm 之后,我们选择了一些看起来不错的选项。

因此,要传递选择的系统变量,选项是使用包含所需变量的 .json 资源在 Controller 和操作中公开它们。然后,只需读取脚本开头某处的 //somename.json 资源,就可以将它们包含在前端 JS 应用程序中。

现在是时候给出原因了:

  • Java 应用程序和 JS 应用程序从相同的单个 .jar 文件开始,因此从 JS 可见的默认主机与 Java 相同。
  • .json 只包含数据,很容易明确选择那些应该公开的变量
  • 解决方案易于实现

希望对大家有帮助

关于javascript - 带有内部 React 的 Spring Boot - 以正确的方式传递 ENV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62912916/

相关文章:

javascript - 单击即可更改两个网页之间两个 iframe 的相同内容

java - 来自不同服务器的 Hadoop 输入

java - 未找到主类

java - 为什么我不能在 Selenium/HtmlUnit 的字段中输入文本?

javascript - React-select 和 axios 问题

javascript - 用 Canvas 创建棋盘

javascript - 重定向到另一个页面 Javascript

javascript - 如何在 react native android 应用程序中显示图像?

javascript - Jquery - 包含返回意外结果的方法

javascript - 使用单个对象修改对象维度数组