Nodejs - Loop Callbacks
shoxxdj
-
Xavierdu34 Messages postés 223 Statut Membre -
Xavierdu34 Messages postés 223 Statut Membre -
Bonjour,
Je rencontre un problème, disons de logique avec Node js.
N'étant pas très habitué à ce genre de programation..
Ce que je veux faire :
Apeller une API avec X valeurs contenues dans un tableau devices.
Récupérer les résultats de cette api dans un tableau que je parserais dans ma vue index.ejs.
Cependant avec un tel code, la variable running_images est vide lorsqu'elle est passée à la vue ( le temps d'appel de cette api est assez long .. )
j'ai cru comprendre qu'il y avais une histoire de callbacks. mais je n'arrive pas à la mettre en pratique dans mon cas ...
Je vous remercie d'avance :D
EDIT: Précision du langage dans la coloration syntaxique.
Je rencontre un problème, disons de logique avec Node js.
N'étant pas très habitué à ce genre de programation..
Ce que je veux faire :
Apeller une API avec X valeurs contenues dans un tableau devices.
Récupérer les résultats de cette api dans un tableau que je parserais dans ma vue index.ejs.
app.get('/',function(req,res){
running_images=[];
for(var i=0;i<devices.length;i++)
{
request('appelapi',function(error,response,body)
{
if(!error && response.statusCode==200)
{
running_images.push(response);
}
});
}
res.render('index.ejs',{res:running_images});
Cependant avec un tel code, la variable running_images est vide lorsqu'elle est passée à la vue ( le temps d'appel de cette api est assez long .. )
j'ai cru comprendre qu'il y avais une histoire de callbacks. mais je n'arrive pas à la mettre en pratique dans mon cas ...
Je vous remercie d'avance :D
EDIT: Précision du langage dans la coloration syntaxique.
A voir également:
- Nodejs - Loop Callbacks
- Fruity loop - Télécharger - Édition & Montage
- Loop 12 - Télécharger - Création musicale
- Loop be1 - Télécharger - Création musicale
- Cross loop - Télécharger - Connexion à distance
- Loop Recorder - Télécharger - Streaming audio
1 réponse
Bonjour,
peut être une idée du genre :
peut être une idée du genre :
app.get('/',function(req,res){
running_images=[];
for(var i=0;i<devices.length;i++)
{
request('appelapi',function(error,response,body)
{
if(!error && response.statusCode==200)
{
running_images.push(response);
}
});
if(devices.length == i) { res.render('index.ejs',{res:running_images}); }
}
if(devices.length == i-1) { res.render('index.ejs',{res:running_images});