Tengo una aplicación Serverless Express básica en una lambda, con una ruta establecida en async verdadero. Quiero activar esta ruta de forma asíncrona desde una aplicación diferente y espero que se ejecute en segundo plano sin tener que esperar la respuesta.
La ruta en serverless.yml
- http: path: foo/{any+} method: post async: true - http: path: another/sync-route method: postNota: aquí tengo otras rutas que no se invocan de forma asincrónica.
Cuando llamo a este método, devuelve correctamente una respuesta 200 inmediatamente. Pero el código real nunca se ejecuta, tengo una inserción de base de datos allí y no sucede. En API Gateway, puedo ver que el X-Amz-Invocation-Type se pasa correctamente como tipo de Event .
¿Que me estoy perdiendo aqui? El controlador de ruta es una prueba y el código es muy simple.
testAsync: async (req, res) => { console.log("In Test Async"); // Does not display in Cloudwatch try { const { value } = req.body; const resp = await updateTest(value); // This just inserts an entry in the DB with value return res.send(resp); } catch (err) { return res.status(500).send(err); } },¿Hay alguna otra configuración que me falta aquí? No soy un experto en AWS, por lo que cualquier ayuda sería muy apreciada. ¡Gracias!