【问题标题】:How to get API gateway url in Environment variable in Serverless如何在无服务器环境变量中获取 API 网关 url
【发布时间】:2021-03-10 02:27:24
【问题描述】:

我正在开发一个无服务器框架(云形成),我在同一个 AWS 区域创建了两个堆栈,每个 serverless.yml(stack1, stack2) 都有自己的 API。如何在 stack-2 yml 中获取 stack-1(yml) API URL。

Stack-1(serverless1.yml)

functions:
  tGateWay:
    handler: src/handlers/tGateWay.handler
    name: ${self:provider.stage}-tGateWay
    environment:
      first: ${self:provider.stage}-firstlambda
    events:
      - http:
          method: any
          path: /tGateway
          private: true

Stack-2(serverless2.yml)

functions:
  tModule:
    handler: src/handlers/tModule.handler
    name: ${self:provider.stage}-tModule
    environment:
      find: ${self:provider.stage}-find
      T_GATEWAY: https://xxxxxxxxx.execute-api.xxxxxxx-1.amazonaws.com/dev/tGateway

在那个 T_GATEWAY 我想访问 stack-1 API 网关 URL

提前致谢!

【问题讨论】:

  • 我尝试了导出和导入,但它给出了 No export named serverless 错误。
  • brotha 能否通过接受的答案获得赞成票? ??????

标签: amazon-web-services amazon-cloudformation aws-api-gateway serverless-framework aws-sdk-nodejs


【解决方案1】:

您可以使用 SecretsManager,然后将其从那里导入到您的函数中,如下所示:

iamRoleStatements:
    - Effect: Allow
      Action:
        - secretsmanager:GetSecretValue

functions:
  handler.js
  myHandler:
    handler: myHandler
    environment:
      yourSecretKey: "{{resolve:secretsmanager:secretYouCreated:SecretString:yourSecretKey}}"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-29
    • 2020-10-31
    • 2021-11-17
    • 2011-06-21
    • 1970-01-01
    • 2019-04-16
    • 2015-02-19
    相关资源
    最近更新 更多