Utiliser async and await - Amazon CloudFront

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utiliser async and await

CloudFront Fonctions fournies par JavaScript Runtime Functions 2.0 async et await syntaxe permettant de gérer Promise les objets. Les promesses représentent des résultats différés accessibles via le mot clé await dans les fonctions marquées comme async. Diverses nouvelles WebCrypto fonctions utilisent Promises.

Pour plus d’informations sur les objets Promise, consultez Promise.

Note

Vous devez utiliser JavaScript Runtime 2.0 pour les exemples de code suivants.

awaitne peut être utilisé qu'à l'intérieur async des fonctions. asyncles arguments et les fermetures ne sont pas pris en charge.

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; }

L'exemple de JavaScript code suivant montre comment afficher les promesses avec la méthode de la then chaîne. Vous pouvez utiliser catch pour visualiser les erreurs.

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; }