Question du test Node.js

Écrire un programme NodeJS qui récupère 3 films depuis une API et affiche leur id et leur titre.

Intermédiaire

Soit les 2 fonctions suivantes getMovie et run :

const Qajax = require('qajax'); // Librairie basée sur Q, permettant de faire des promesses en HTTP

// Retourne une promesse HTTP sur l'url en paramètre
function getMovie(url) {
  return Qajax.getJSON(url);
}

// Démarre le générateur en paramètre et récupère une promesse
function run(generator) {
  var iterator = generator();

  function go(result) {
    result.value.then(function(value) {
      go(iterator.next(value))
    });
  }

  go(iterator.next());
}

Que va t-il se passer lorsque le code suivant sera appelé :

run(function *() {
  let mov1 = yield getMovie('https://api.myjson.com/bins/3hn4g'); // {id:1, title:'Back to the future'}
  let mov2 = yield getMovie('https://api.myjson.com/bins/1gro0'); // {id:2, title:'Matrix'}
  let mov3 = yield getMovie('https://api.myjson.com/bins/53igg'); // {id:3, title:'Star Wars'}

  console.log(mov1.id, mov1.title);
  console.log(mov2.id, mov2.title);
  console.log(mov3.id, mov3.title);
});
Auteur: Jean-marie CléryStatut : PubliéeQuestion passée 713 fois
Modifier
0
Évaluations de la communauté
developer avatar
Auteur anonyme
28/04/2023
A peine le temps de lire la question. Si vous faites une question alambiquée, laissez du temps pour y répondre convenablement...
developer avatar
Auteur anonyme
05/06/2023
Merci pour le retour, le temps a été doublé sur cette question.