从cdk中获取AWS Lambda url,并将其插入到前端应用程序中



我用typescript编写了一个aws-cdk堆栈。它由存储在s3存储桶中的react应用程序组成(通过s3存储桶部署(。我还有一个运行websocketapi的api网关。我现在需要将两者结合在一起,告诉react应用程序api网关的url,最好是通过部署步骤。

在部署之前,我曾尝试将令牌写入文件,但字符串仍然是令牌化的,所以我最终使用了wss://${Token[TOKEN.243]}...,所以写入还为时过早。我已经尝试过通过cdk deploy -O编写该文件,但现在已经太晚了,无法随部署一起发货。

如何通知我的react应用程序web api url?

当我做这个模式时,我将使用CloudFront将/api/*代理到我的api网关,并将其他所有内容代理到S3 bucket网站url。然后react代码只需要在/api 上发出请求

您可以将您的Stack分成两部分。

  1. Api堆栈
  2. ReactApp堆栈

首先使用-O选项部署Api Stack,将api url写入部署到s3的目录中的某个json文件中。

现在您已经在json文件中有了api url的json,现在可以部署ReactApp Stack了。

注意:在你的react应用程序中,你应该从cdk deploy -O <filename>.json生成的文件中读取url。

最新更新