aws serverles项目如何使用多自定义域?

问题描述 投票:0回答:2

是否可以使用与其他自定义域不同的 lambda 函数;在 servlerless lambda 项目中,我需要一个 lambda 来使用与其他 lambda 不同的自定义域。例如

userNotification --> dev.xyz.com/users
所有其他人
getProducts --> dev.abc.com/products 
我尝试如下使用自定义域,但没有用。

        userNotification:
            handler: src/index.handler
            events:
              - http:
                  method: get
                  path: /userNotification
                  cors:
                    origin: '*'
                    headers:
                      - Content-Type
                      - X-Amz-Date
                      - Authorization
                      - X-Api-Key
                      - X-Amz-Security-Token
                      - If-Match
                      - If-None-Match
            # override default customDomain
            customDomain:
              domainName: 'dev.xyz-comm-sanbox.com'
              basePath: dev-newbank
              stage: dev
              createRoute53Record: true
    

在 serverless.yml 中,我使用的是自定义域,因为它工作正常,但是我有一个用于所有 lambda 函数的自定义域。我需要一个 lambda 来使用与其他人不同的 customDomain;

           custom:
             customDomain:
               basePath: dev-newbank
               domainName: 'dev.abc.com'
               stage: 'dev'
               createRoute53Record: true
               endpointType: regional
               securityPolicy: tls_1_2
node.js aws-lambda aws-api-gateway serverless custom-domain
2个回答
1
投票

我认为你必须有 2 个不同的 serverless.ymls,1 个用于管理你的 /products 路径,一个用于 /users。然后您可以为每个指定不同的域。因为在它之下,所有 API 网关仅支持 API 上的自定义域,而不支持 API 中的各个端点,因此您必须将您的 lambda 拆分


0
投票

我认为你也可以在一个自定义域中使用这两个域而不是 2.

例如: 自定义域: 域名:'dev.xyz-comm-sanbox.com' basePath:dev-newbank 阶段:开发 创建Route53Record:真 自定义域: basePath:dev-newbank 域名:'dev.abc.com' 阶段:'开发' 创建Route53Record:真 端点类型:区域 安全策略:tls_1_2

© www.soinside.com 2019 - 2024. All rights reserved.