AWS Lambda函数和AWS API网关(自定义域名)路径冗余/冲突



我正在尝试删除在无服务器配置和aws-api网关映射中使用的冗余路径。

问题:登录无服务器yamlserverless.yml

frameworkversion: '>1.8'
service: ${stage}-login
provider:
name: aws
runtime: nodejs10.x
timeout: 12

functions: 
login: 
name: login
handler: login.handler
events: 
- http: 
path: login
cors: true
integration: lambda
request:
passThrough: WHEN_NO_MATCH
template:
application/json:
<response omitted>
plugins:
- serverless-offline

API映射到我的自定义域

  1. API-login-dev
  2. 阶段-开发
  3. 路径(可选(-登录

目标:Lambda函数:

  1. 登录-{base url}/dev/login
  2. register-{base url}/dev/register

发生了什么:

  1. 登录{基本url}/dev/login/login
  2. register-{base-url}/dev/register/register

采取的行动:

  1. 尝试删除Path(可选(,但如果省略Path,则不允许添加另一个lambda函数
  2. 尝试代理(不确定这是否符合我的理解(,但没有;t允许,因为一个错误显示在我的lambda函数参数之一中使用了{login}
  3. 删除了serverless yaml配置文件中的路径,并将其替换为空白或/-,但对我来说不是一个选项,因为我需要保留现有的配置

非常感谢您的帮助。

你试过这个吗:

functions: 
login: 
name: login
handler: login.handler
events: 
- http: 
path: /login

通过添加"/">在路径的起始处。

最新更新