node-express error : express deprecated res.send(status): Use res.sendStatus(status) instead

前端 未结 7 898
甜味超标
甜味超标 2020-12-09 09:22

I am trying to send an integer via response.send() but I keep getting this error

express deprecated res.send(status): Use res.sendStatus

相关标签:
7条回答
  • 2020-12-09 09:30

    As long as you're not sending String or Object/Array data you get an error. Solution convert your data to string:

    app.get('/runSyncTest', function(req, res) {
        var number = 5000;
        res.send((number).toString()); //Number is converted with toString()
    });
    
    0 讨论(0)
  • 2020-12-09 09:32

    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

    0 讨论(0)
  • 2020-12-09 09:32

    (as mentioned in the comments already)

    The manual states:

    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));
    
    0 讨论(0)
  • 2020-12-09 09:35

    Use like this,

    res.status(404).send('Page Not found');
    
    0 讨论(0)
  • 2020-12-09 09:39

    This is because you are sending numeric value in the res.send.

    You could send a json object or convert it to string.

    0 讨论(0)
  • 2020-12-09 09:45

    I am getting a deprecated warning in node-express typescript project due to res.send(403);

    Solution 1 -

    res.sendStatus(403);
    

    Solution 2 -

    res.status(403).json(
            {
                'success': false,
                'result': 'forbidden'
            }
        )
    
    0 讨论(0)
提交回复
热议问题