如何将API URL存储在AWS S3中托管的React应用程序的app.config/web.config等文件中



问题出在哪里?

我在AWS S3中托管了一个React应用程序。该应用程序向API URL发出请求并显示结果。API URL会根据环境而更改。

DEV环境-https://192.168.0.1/api/users

测试环境-https://192.168.0.2/api/users

我想在app.config/web.config这样的文件中包含这些不同的API URL,这样我就可以随时更改URL(从而避免构建/部署(。

我试过什么?

  1. 我尝试在.env文件中添加这些URL,如下所示:

DEV_API_URL=https://192.168.0.1/api/users

测试_API_URL=https://192.168.0.2/api/users

之后,我可以使用React代码中的这些URL,如下所示:

环境.DEV_API_URL

环境测试_API_URL

但是,如果我想更改这些URL,我应该编辑.env文件,在每次更改时使用Jenkins进行构建和部署。

  1. 我尝试的另一种方法是,将这些URL作为Jenkins中的环境变量。在这种方法中,我还需要在每次更改时进行构建和部署

我需要什么?

你能告诉我一个地方吗(比如app.config/web.config(,我可以在那里更改这些URLS,我的React应用程序可以立即启动它,而无需构建/部署吗?

您可以将URL存储在数据库中,并在每次需要引用React中的值时获取URL。

它增加了大量的数据库开销,但不需要任何部署。您只需根据需要更改数据库中的url即可。

我认为您可能想要使用环境变量。基本上,您可以为开发/暂存/生产构建一些东西,并拥有名为.env.development.env.production的文件,其中可以包含环境变量,如:REACT_APP_API_URL=https://example.com,并将其与process.env.REACT_APP_API_URL一起在代码中使用。请注意,它们应该以REACT_APP为前缀。您可能使用的一些库有:dotenv、env-cmd

相关内容

最新更新