node-express error : express deprecated res.send(status): Use res.sendStatus(status) instead
Solution 1
You could try this:
res.status(200).send((results[0].id).toString());
Guys are right - it doesn't allow numbers. Prooflink: http://expressjs.com/4x/api.html#res.send
Solution 2
This is because you are sending numeric value in the res.send.
You could send a json object or convert it to string.
Solution 3
(as mentioned in the comments already)
The body parameter can be a Buffer object, a String, an object, or an Array.
So integers aren't directly supported and need to be converted to one of those types first. For instance:
response.send(String(idTest));
Solution 4
Its Deprecated, Express 5 No Longer Supports The Signature Like -
res.json(200, {
result: result
});
Instead, use a below method, Means you only need to change the format of sending responses.
res.status(statusCode).json(result);
Example -
res.status(200).json({'success' : true, 'result': result})
Solution 5
Use like this,
res.status(404).send('Page Not found');
D-W-A
Updated on December 15, 2021Comments
-
D-W-A over 2 years
I am trying to send an integer via
response.send()
but I keep getting this errorexpress deprecated res.send(status): Use res.sendStatus(status) instead
I am not sending a Status, my code is
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) }); });