web-dev-qa-db-fra.com

fonction définie par l'utilisateur avec rappel dans nodejs

quelqu'un peut-il me donner un exemple dans lequel nous créons une fonction particulière, qui a également une fonction de rappel?

function login(username, password, function(err,result){
});

où dois-je mettre le code de la fonction de connexion et de la fonction de rappel?
p.s .: Je suis nouveau sur nodejs

11
manpreetSingh

Voici un exemple de la fonction de connexion:

function login(username, password, callback) {
    var info = {user: username, pwd: password};
    request.post({url: "https://www.adomain.com/login", formData: info}, function(err, response) {
        callback(err, response);
    });
}

Et appeler la fonction de connexion

login("bob", "wonderland", function(err, result)  {
    if (err) {
        // login did not succeed
    } else {
        // login successful
    }
});
23
jfriend00

mauvaise question mais w/e
vous avez mélangé l'appel et la définition d'une fonction asynchrone:

// define async function:
function login(username, password, callback){
  console.log('I will be logged second');
  // Another async call nested inside. A common pattern:
  setTimeout(function(){
    console.log('I will be logged third');
    callback(null, {});
  }, 1000);
};

//  invoke async function:
console.log('I will be logged first');
login(username, password, function(err,result){
  console.log('I will be logged fourth');
  console.log('The user is', result)
});
5
Plato