Node js:res.locals是否发送到客户端?

mic*_*ato 1 node.js express

在 Express 中,当我将响应发送回客户端时,数据是否会res.locals发送回客户端?

我不希望出现这种情况,因为我将敏感数据存储在res.locals.

jfr*_*d00 5

res.locals不发送给客户端。

目的res.locals是为服务器端中间件创建一个标准位置来放置与构造响应相关的数据。此数据仅在服务器端可用,不会自动提供给客户端,并且不会与响应一起发送,除非您的代码或模板明确地将部分数据插入网页中。

的经典用途res.locals是渲染模板时,因为大多数模板渲染引擎都会查找res.locals模板中引用的属性。因此,您的服务器端代码将设置一些数据res.locals(通常是适用于许多模板的标准数据),然后在路由处理程序中的某个位置进行调用,res.render('sometemplate', ...)模板引擎将查找res.locals模板中指定的任何变量没有直接作为参数传递给res.render(). 例如,某些中间件可能会检查用户是否登录,设置该状态,res.locals然后模板可以根据用户是否登录来修改其呈现。