express的res参数一览

• res.status(code)

设置 HTTP 状态代码。Express 默认为 200(成功),所以你可以使用这个方法返回状态 404(页面不存在)或 500(服务器内部错误),或任何一个其他的状态码。对于重定向 (状态码 301、302、303 和 307),有一个更好的方法:redirect。

• res.set(name,value)

设置响应头。这通常不需要手动设置。

• res.cookie(name,vaue,[options]),res.clearCookie(name,[options])

设置或清除客户端 cookies 值。需要中间件支持

• res.redirect([status],url)

重定向浏览器。默认重定向代码是 302(建立)。通常,你应尽量减少重定向,除非永 久移动一个页面,这种情况应当使用代码 301(永久移动)。res.send(body),res.send(status,body) 向客户端发送响应及可选的状态码。Express 的默认内容类型是 text/html。如果你想改 为 text/plain,需要在 res.send 之前调用 res.set('Content-Type','text/plain\')。如 果 body 是一个对象或一个数组,响应将会以 JSON 发送(内容类型需要被正确设置), 不过既然你想发送 JSON,我推荐你调用 res.json。

res.json(json),res.json(status,json)

向客户端发送 JSON 以及可选的状态码。

res.jsonp(json),req.jsonp(status,json)

向客户端发送 JSONP 及可选的状态码。

res.type(type)

一个简便的方法,用于设置 Content-Type 头信息。基本上相当于 res.set('ContentType','type'),只是如果你提供了一个没有斜杠的字符串,它会试图把其当作文件的 扩展名映射为一个互联网媒体类型。比如,res.type('txt') 会将 Content-Type 设为 text/plain。此功能在有些领域可能会有用(例如自动提供不同的多媒体文件),但是 通常应该避免使用它,以便明确设置正确的互联网媒体类型。

res.format(object)

这个方法允许你根据接收请求报头发送不同的内容。这是它在 API 中的主要用途,我 将会在第 15 章详细讨论。这里有一个非常简单的例子:res.format({'text/plain':'hi there','text/html':'<\b>hi there<\/b>'})。 res.attachment([filename]),res.download(path,[filename],[callback]) 这两种方法会将响应报头 Content-Disposition 设为 attachment,这样浏览器就会选 择下载而不是展现内容。你可以指定 filename 给浏览器作为对用户的提示。用 res. download 可以指定要下载的文件,而 res.attachment 只是设置报头。另外,你还要将 内容发送到客户端。

res.sendFile(path,[option],[callback])

这个方法可根据路径读取指定文件并将内容发送到客户端。使用该方法很方便。使用静 板引擎渲染视图(不能把 res.render 的 locals 参数与 res.locals 混为一谈,上下文 在 res.locals 中会被重写,但在没有被重写的情况下仍然可用)。res.render 的默认响 应代码为 200,使用 res.status 可以指定一个不同的代码。

随机浏览