echoing-zebra-28421
06/04/2021, 3:46 PMconst api = new awsx.apigateway.API(`airship-api-${NODE_ENV}`, {
routes: [
{
path: "/",
method: "GET",
eventHandler: async (event: APIGatewayProxyEvent) => ({
statusCode: HttpStatus.OK,
body: "Hello, API Gateway V4!",
}),
},
{
path: "/api/named_users/associate",
method: "POST",
eventHandler: async (event: APIGatewayProxyEvent): Promise<any> => ({
statusCode: HttpStatus.OK,
body: JSON.stringify(await handleSetNamedUser(event)),
isBase64Encoded: false,
}),
},
{
path: "/api/channels/tags",
method: "POST",
eventHandler: async (event: APIGatewayProxyEvent) => ({
statusCode: HttpStatus.OK,
body: JSON.stringify(await handleSetTags(event)),
isBase64Encoded: false,
}),
},
],
});
I want to make something ifcurved-pharmacist-41509
06/05/2021, 1:12 AMconst lambda = new aws.lambda.CallbackFunction(`${name}-lambda`, {
callback: async (event: APIGatewayProxyEvent): Promise<any> => ({
statusCode: HttpStatus.OK,
body: JSON.stringify(await handleSetNamedUser(event)),
isBase64Encoded: false,
}),
})
const integration = new aws.apigatewayv2.Integration(
`${name}-integration`,
{
apiId,
integrationMethod: 'POST',
integrationType: 'AWS_PROXY',
integrationUri: lambda.invokeArn,
},
)
new aws.apigatewayv2.Route(
`${name}-route`,
{
apiId,
routeKey: 'api/named_users/associate',
authorizationType: authorizerId ? 'JWT' : 'NONE',
authorizerId: authorizerId,
target: pulumi.interpolate`integrations/${integration.id}`,
},
)
echoing-zebra-28421
06/05/2021, 2:34 AMcurved-pharmacist-41509
06/05/2021, 2:34 AMechoing-zebra-28421
06/05/2021, 2:35 AMcurved-pharmacist-41509
06/05/2021, 2:36 AMechoing-zebra-28421
06/05/2021, 2:54 AM