Estoy aprendiendo nodo y arquitectura sin servidor. Para probar mi función lambda localmente, actualmente estoy usandolambda-local, que ha funcionado bien hasta ahora.
Ahora tengo una función que invoca otra función lambda, algo como esto:
let lambda = new integration.myLambda.AWS.Lambda(); let params = { FunctionName: 'my-other-function', InvocationType: 'RequestResponse', LogType: 'None', Payload: JSON.stringify(myEvent) }; return new Promise((resolve, reject) => { lambda.invoke(params, function (error, data) { if (error) { console.log('error on invoke', error); reject({ statusCode: HttpStatus.INTERNAL_SERVER_ERROR, message: error }); } else { console.log('invoke success', data); resolve(JSON.parse(data.Payload)); } }); });Este fragmento de código no funciona localmente, pero una vez implementado en aws, funciona bien. Sin embargo, la implementación en aws lleva unos 2 minutos. Así que me preguntaba si hay una manera de ejecutar este código localmente.
¿Alguna sugerencia?
¡Gracias!
Así que personalmente uso serverless como mi marco preferido para local, también hay un proyecto de aspecto muy prometedor de atlassian llamado localstack aquí . ¡En realidad no he probado el segundo! Espero que esto ayude.
Entonces descubrí que todo lo que necesito hacer es exportar: accessKeyId y secretAccessKey.
Solo para probar, póngalo en código justo encima de su llamada de invocación. Luego, asegúrese de colocarlos en un lugar seguro.
los estaba exportando
export ACCESS_KEY_ID=yourkey export SECRET_ACCESS_KEY=yoursecretkeyAhora estoy usando la ventana acoplable, así que los tengo en un archivo de configuración.
Espero que esto ayude