2016-10-29 5 views
0

In meinem senden app.jseffektive Möglichkeit, den Körper als Rückruf

var employees = require('../models/employees'); 

employees.read(req.params.id, function(body) { 
    console.log(body.firstName); 
}); 

in meinem Modelle/Mitarbeiter

var request = require('request'); 

var employees = { 

    read: function(id, callback) { 
     request 
      .get('http://api.mysite.com/employees/' + id, function(error, response, body) { 
       body = JSON.parse(body); 
       return callback(body); 
      }) 
    }, 
}; 

module.exports = employees; 

das funktioniert. (gibt den Angestelltennamen korrekt zurück), aber ich bin mir nicht sicher, ob dies der korrekte (asynchrone) Weg ist, Daten von einer API zu erhalten und sie anzuzeigen.

danke!

Antwort

0

Node.js ist standardmäßig asynchron, so dass Sie es nicht asynchron ausführen müssen.

Für zukünftige Verwendung, wenn Sie mehr Anfragen haben, kann es Zeiten geben, in denen Sie warten müssen, bis bestimmte Anforderungen abgeschlossen sind, bevor Sie den nächsten auslösen können, d. H. Aufgaben synchron ausführen. In diesem Fall müssen Sie etwas wie http://caolan.github.io/async/ verwenden und Funktionsaufrufe in ein Wasserfall-/Serienmodell einreihen.

+0

Was meinst du mit "machen" es in einer asynchronen Weise? Kannst du mir ein Beispiel geben oder mir sagen, was ich in diesem Fall falsch mache? – handsome

+0

Grundsätzlich ist Ihr Code in Ordnung – Kevin

Verwandte Themen