首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何知道我的lambda绑定到的自定义域?

如何知道我的lambda绑定到的自定义域?
EN

Stack Overflow用户
提问于 2018-10-16 03:10:21
回答 1查看 166关注 0票数 2

我有一个lambda函数,它有自己的api网关URL。另外,我在CloudFront (https://abc.def.com/ghi)中有一个与之相关联的自定义域名地址。我可以使用自定义域访问我的lambda。现在,作为一个要求,我应该从lambda函数返回自定义域URL,作为JSON响应的一部分。因此,来自lambda的响应主体应该如下所示:

代码语言:javascript
复制
    {
    "response": "hi i am coming from lambda",
    "myurl": "https://abc.def.com/ghi"
    }

如何在lambda函数中捕获URL?PS:我使用的是Node8.10环境。

EN

回答 1

Stack Overflow用户

发布于 2018-10-16 03:34:44

首先,我要挑战这个要求。将域名url作为响应的一部分返回给客户端是没有意义的,因为客户端已经知道了(否则它一开始就不能发出请求)。

也就是说,解决问题的一种方法是将自定义域url作为Lambda environment variable进行传递。如果您使用AWS SAM / CloudFormation设置应用程序,则将该值作为Environment属性的一部分进行传递,例如在使用SAM时:

代码语言:javascript
复制
ExampleLambda:
  Type: AWS::Serverless::Function
  Properties:
    Runtime: nodejs8.10
    CodeUri: .
    Handler: index.handler
    Environment:
      Variables:
        CUSTOM_DOMAIN_URL: !Sub CustomDomainUrl

然后,CUSTOM_DOMAIN_URL将作为环境变量出现在您的Lambda运行时中:

代码语言:javascript
复制
const CUSTOM_DOMAIN_URL = process.env.CUSTOM_DOMAIN_URL;

然后你你只要把它添加到你的响应对象中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52823295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档