Je récupère une adresse Web en tant que paramètre d'URL, puis j'affiche si l'adresse renvoie un code d'état de 200 ou non. Le problème, c'est que ça ne fonctionne que quelques secondes plus tard - la première fois que je l'exécute, le code assignant 'mystatus' ne semble pas fonctionner correctement. J'ai l'impression qu'il y a un problème avec l'ordre dans lequel je gère les choses, mais je ne suis pas sûr de savoir comment y remédier.Définition de l'ordre des opérations dans une demande http.get() - sync/async
var express = require("express");
var moment = require("moment");
var http = require("http");
var express = require("express");
var moment = require("moment");
var http = require("http");
var app=express();
var mystatus="";
app.get('/new/:name*', function(req,res){
//detect if name is a URL
//return output
http.get("http:"+req.params[0], function(thisres){
if (thisres.statusCode != 200){
mystatus = "Could not load";
}
else {
mystatus = "Loaded!";
}
}).on('error', function(e){
console.error(e);
})
res.json({url_part1: req.params.name,
url_part2: req.params[0],
status: mystatus
});
})
app.listen(8080, function(){
console.log("App listening on port 8080")
});