当我使用lambda控制台测试lambda时,我发现我在控制台中指定的事件与API网关发送的事件不同。来自API网关的事件是完整的http请求对象结构。下面是一个这样的例子。
{ resource: '/screenshot',
path: '/screenshot',
httpMethod: 'POST',
headers: null,
multiValueHeaders: null,
queryStringParameters: null,
multiValueQueryStringParameters: null,
pathParameters: null,
stageVariables: null,
requestContext:
{ path: '/screenshot',
accountId: '286334053171',
resourceId: 'slne19',
stage: 'test-invoke-stage',
domainPrefix: 'testPrefix',
requestId: 'd091e8bf-7948-11e9-951d-3b38e4cc6ad6',但是在lambda控制台中定义的事件只是一个JSON对象。如何在控制台创建相同的测试事件来模拟API网关事件?
发布于 2019-05-18 17:05:51
当您在Lambda控制台中配置测试事件时,您可以从一组事件模板中进行选择。这包括API网关代理事件:

如果使用此方法,则必须为特定的调用配置密钥。
或者,您可以将event (第一个参数)参数console.log (或等效的语言)传递给lambda处理程序。这将为您提供在API Gateway测试中使用的精确JSON对象,而不需要您编辑模板事件。
https://stackoverflow.com/questions/56197424
复制相似问题