Comment faire une requête https conditionnelle?
Arpan Kc
C'est essentiellement ce que j'essaye de faire:
var sendRequest= false; //may be true
https.request(request_params, function(response){ //only sends a request if sendRequest == true
//do something with response if request has been sent
someObjWithCallback.itsfunction(its_params, function(resp){
//do something with response
}
}
Comment puis-je m'assurer que https.request ne s'exécute que lorsque la condition sendRequest est vraie.
Remarque: someObjWithCallback.itsfunction (..) doit s'exécuter dans les deux cas (sendRequest est vrai ou faux). Par conséquent, la fonction de rappel doit s'exécuter dans tous les cas.
Ben Steward
Vous pouvez utiliser une instruction if pour vérifier la variable:
if (sendRequest) {
https.request(request_params, function(response){ //only sends a request if sendRequest == true
//do something with response if request has been sent
someObjWithCallback.itsfunction(its_params, function(resp){
//do something with response
}
})
}
ou profitez de l'opérateur && (et lisez cet excellent article )
sendRequest && https.request(request_params, function(response){ //only sends a request if sendRequest == true
//do something with response if request has been sent
someObjWithCallback.itsfunction(its_params, function(resp){
//do something with response
})
}
ou déconner avec des expressions ternaires (mais seulement si vous vouliez faire quelque chose à la place de la requête quand elle est fausse)
sendRequest ? https.request(request_params, function(response){ //only sends a request if sendRequest == true
//do something with response if request has been sent
someObjWithCallback.itsfunction(its_params, function(resp){
//do something with response
}
}) : console.log('lol, don't actually do this if you dont have an "else" condition...')