# 响应
res
对象表示 Express 应用程序在收到 HTTP 请求时发送的 HTTP 响应。
在本文档中,按照惯例,该对象始终称为 res
(HTTP 请求为 req
),但其实际名称由您正在使用的回调函数的参数确定。
例如:
app.get('/user/:id', (req, res) => {
res.send(`user ${req.params.id}`)
})
但你也可以拥有:
app.get('/user/:id', (request, response) => {
response.send(`user ${request.params.id}`)
})
res
对象是Node自带响应对象的增强版,支持所有内置字段和方法。
方法 | 描述 |
---|---|
res.app | 此属性包含对使用中间件的 Express 应用程序实例的引用。 |
res.headersSent | 指示应用程序是否为响应发送 HTTP 标头的布尔属性。 |
res.locals | 使用此属性设置在使用 res.render 呈现的模板中可访问的变量。 |
res.req | 此属性包含对与此响应对象相关的 请求对象 的引用。 |
res.append | 将指定的 value 附加到 HTTP 响应标头 field 。 |
res.attachment | 将 HTTP 响应 Content-Disposition 标头字段设置为 "attachment"。 |
res.cookie | 将 cookie name 设置为 value 。 |
res.clearCookie | res.clearCookie |
res.download | 将 path 处的文件作为 "attachment" 传输。 |
res.end | 结束响应过程。 |
res.format | 对请求对象的 Accept HTTP 标头(如果存在)执行内容协商。 |
res.get | 返回 field 指定的 HTTP 响应标头。匹配不区分大小写。 |
res.json | 发送 JSON 响应。 |
res.jsonp | 发送带有 JSONP 支持的 JSON 响应。 |
res.links | 加入作为参数属性提供的 links 以填充响应的 Link HTTP 标头字段。 |
res.location | 将响应 Location HTTP 标头设置为指定的 path 参数。 |
res.redirect | 重定向到从指定 path 派生的 URL。 |
res.render | 呈现 view 并将呈现的 HTML 字符串发送到客户端。 |
res.send | body 参数可以是 Buffer 对象、String 、对象、Boolean 或 Array 。 |
res.sendFile | 在给定的 path 传输文件。 |
res.sendStatus | 将响应 HTTP 状态代码设置为 statusCode ,并将注册的状态消息作为文本响应正文发送。 |
res.set | 将响应的 HTTP 标头 field 设置为 value 。 |
res.status | 设置响应的 HTTP 状态。 |
res.type | 将 Content-Type HTTP 标头设置为由指定 type 确定的 MIME 类型。 |
res.vary | 将该字段添加到 Vary 响应标头(如果尚不存在)。 |