J'apprends encore js, mais je suis en train d'essayer d'écrire un serveur de base dans nodejs. Le serveur est censé prendre une requête, puis renvoyer un JSON à partir d'un db. J'essaie d'utiliser mes promesses, mais je peux comprendre ce que je veux dire. Mon serveur renvoie une réponse vide. Alors qu'est-ce que je fais mal?Utiliser les promesses pour db et server
Mon fichier serveur jusqu'à présent (simplifié):
http.createServer(function (request, response) {
if (request.method === "GET") {
...
var dbRes = dbFunc.getFromDB(query);
response.statusCode = 200;
response.setHeader('Content-Type', 'application/json');
response.end(JSON.stringify(dbRes));
}
}).listen(port);
Mon fichier db à ce jour (simplifié):
exports.readHandeler = function (query) {
var promise = new Promise(function(resolve, reject) {
db.collection('data').find(query).toArray(function(err, res) {
if (err) {
throw err;
reject(-1);
}
resolve(res);
}
});
promise.then(function(result) {
return result;
}, function(err) {
return -1;
});
}
Thx mal l'essayer, que signifie la notation =>? – ortusolis
Il s'agit d'une fonction plus courte sans liaison 'this'. Pour des exemples, vous pouvez vérifier [mdn] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions) – Sridhar
Ok, je comprends, ty – ortusolis