res.send()
是 Express.js 框架中用于向客户端发送响应的方法。一旦调用了 res.send()
,HTTP 响应的状态码、头部信息和内容体都会被发送出去,此时再尝试修改响应头或者状态码就会抛出错误,因为响应已经完成了。
res.send()
简化了响应的构建过程,自动设置正确的 Content-Length
头部。Content-Type
。res.send()
可以接受字符串、Buffer、对象或数组作为参数。如果在调用 res.send()
后尝试设置响应头,会遇到错误,因为响应已经发送,无法再修改。
res.send()
之前设置所有需要的响应头:res.send()
之前设置所有需要的响应头:const express = require('express');
const app = express();
app.get('/example', (req, res) => {
// 正确的做法是在发送响应前设置头部
res.setHeader('Content-Type', 'application/json');
res.send({ message: 'Hello World!' });
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
通过上述方法,可以避免在调用 res.send()
后尝试设置响应头导致的错误。
领取专属 10元无门槛券
手把手带您无忧上云