res.end() 和 res.send() 有什么区别?

问题描述

res.send()将发送 HTTP 响应。它的语法是,

res.send([body])

body 参数可以是 Buffer 对象、String、对象或 Array。例如:

res.send(new Buffer('whoop'));
res.send({ some: 'json' });
res.send('<p>some html</p>');
res.status(404).send('Sorry, we cannot find that!');
res.status(500).send({ error: 'something blew up' });

有关更多信息,请参阅内容

res.end()将结束响应过程。这个方法其实来自 Node 核心,具体来说response.end()就是http.ServerResponse. 它用于在没有任何数据的情况下快速结束响应。例如:

res.end();
res.status(404).end();

阅读内容获取更多信息。

解决方法

我是初学者,Express.js我对这两个关键字感到困惑:res.end()res.send()

它们是相同的还是不同的?