J'essaie d'envoyer un entier via response.send()
mais je continue à avoir cette erreur
express obsolète res.send (status): utilisez res.sendStatus (status)
Je n'envoie pas de statut, mon code est
app.get('/runSyncTest' , function(request, response){
var nodes = request.query.nodes;
var edges = request.query.edges;
if (edges == "" ){
edges = []
}
userStory.userStory(nodes,edges);
connection.query('SELECT MAX(id) as id FROM report ', function(err,results, fields) {
idTest = results[0].id
response.send (idTest)
});
});
Vous pouvez essayer ceci:
res.status(200).send((results[0].id).toString());
Les gars ont raison - cela ne permet pas les chiffres . Prooflink: http://expressjs.com/4x/api.html#res.send
C'est parce que vous envoyez une valeur numérique dans le res.send.
Vous pouvez envoyer un objet JSON ou le convertir en chaîne.
(comme mentionné dans les commentaires déjà)
Le paramètre body peut être un objet Buffer, une chaîne, un objet ou un tableau.
Les entiers ne sont donc pas directement pris en charge et doivent d'abord être convertis en l'un de ces types. Par exemple:
response.send(String(idTest));
Utilisez comme ça,
res.status(404).send('Page Not found');
Tant que vous n'envoyez pas de données String ou Object/Array, vous obtenez une erreur . Solution convertissez vos données en chaîne:
app.get('/runSyncTest', function(req, res) {
var number = 5000;
res.send((number).toString()); //Number is converted with toString()
});