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.
async function answer() { return 42; } // Note: async, await can be used only inside an async function. 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 async function 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; }