Express.js是静态文件中间件使用的会话和cookie吗?

时间:2014-07-23 20:58:12

标签: node.js session cookies express

使用以下express.js应用程序:

app.use( cookieParser );
app.use( session( /*options*/) );
app.use( serveStatic( './dir' ) );

app.get( '/foo', onlyLogicThatNeedsSession )

我认为即使在提供静态文件时也会获取会话数据。

1 :这是对的吗?

如果是这样,那就意味着应用程序的结构会更好:

app.use( serveStatic( './dir' ) );

app.get( 'foo', cookieParser, session, onlyLogicThatNeedsSession )

2 :会带来性能优势吗?即如果会话存储是redis,redis服务器在提供静态文件时不会被命中?

1 个答案:

答案 0 :(得分:3)

是的,中间件按顺序执行,因此理想情况下,您可以将静态中间件置于最顶端,以便绕过任何不必要的额外请求处理。