Utilice async y await - Amazon CloudFront

Utilice async y await

Las funciones de tiempo de ejecución 2.0 de JavaScript de CloudFront Functions proporcionan una sintaxis async y await para gestionar los objetos Promise. Las promesas representan resultados retrasados a los que se puede acceder mediante la palabra clave await en las funciones marcadas como async. Varias funciones nuevas de WebCrypto utilizan promesas.

Para obtener más información sobre los objetos Promise, consulte Promesa.

nota

Debe usar el tiempo de ejecución de JavaScript 2.0 para las siguientes muestras de código.

await solo se puede usar dentro de funciones async. No se admiten argumentos ni cierres de async.

async function answer() { return 42; } // Note: async, await can be used only inside an async function. async arguments and closures are not supported. async function handler(event) { // var answer_value = answer(); // returns Promise, not a 42 value let answer_value = await answer(); // resolves Promise, 42 console.log("Answer"+answer_value); event.request.headers['answer'] = { value : ""+answer_value }; return event.request; }

El siguiente ejemplo de código JavaScript muestra cómo ver las promesas con el método en cadena then. Se puede utilizar catch para ver los errores.

async function answer() { return 42; } async function squared_answer() { return answer().then(value => value * value) } // Note: async, await can be used only inside an async function. async arguments and closures are not supported. async function handler(event) { // var answer_value = answer(); // returns Promise, not a 42 value let answer_value = await squared_answer(); // resolves Promise, 42 console.log("Answer"+answer_value); event.request.headers['answer'] = { value : ""+answer_value }; return event.request; }