随着 web 应用变得越来越复杂与庞大,会话(session)成为了一个必不可少的组件。在服务器端,处理 session 可能比较简单,但在客户端(browser)是有着许多限制的。@conga/framework-session npm 包为我们提供了非常方便而可靠的解决方案。
简介
@conga/framework-session 是一个基于 express-session 的 session 库,支持了 session 管理的同时提供了将 session 存储到数据库(redis 或 mongodb)的选项。此外,@conga/framework-session 还支持集群、跨域等。
安装
npm install @conga/framework-session --save
使用
下面是一个使用示例,展示了如何配置并使用 @conga/framework-session。
-- -------------------- ---- ------- -- -- ------------------------ ----- ------- - ------------------- ----- ------- - ------------------------------------ -- -- ------- -- ----- --- - ---------- -- -- ------- ----------------- -------- ----- --------------- - -- -- ------- -- ------- -- ------- ---------- -------- - ----- ------------ ----- ------ --- ------- ----------- --------- - -- ------- --- ------- ---- -- -- ------------ ----- ---- -- - -- -- ------- ----- ----------- - ------------ -- -- ------- --------------- - ------ -- ---- --------------- ---------------------- --- -- ---- ---------------- -- -- - ---------------------- -- ---- ------- ---展开代码
上述示例代码揭示了一个最基本的使用方式,应用程序在请求时通过中间件传递 session 配置。通过 req.session
可以读取或者写入 session 数据。@conga/framework-session 会根据配置自动将数据存储到指定的数据源中。
高级使用
@conga/framework-session 支持更多底层细节的配置,以支持集群和一些特定的需求。下面列举常用的一些配置:
-- -------------------- ---- ------- ----------------- -------- ----- -- -- ------- -- ------- --- -------- -- ------- ---- -- ------- ------ --------------- - ------- -------- -------- - -- ----- ---- - -- -- ------- ------ -- ------- - ------- ----- ------- -- - ---- -- -- ------- ----------- ------- ----- ----- --------- -- - -- ------ ------- -- -- -- ------- ----- ----------- ------ -- - -- --- ------- -- -- -- ------- ------ ------------- ------ -- - -- ---- ------- -- -- -- ------- -- ---- ----- ---- -- - -- -- ------- -- - ----展开代码
结论
@conga/framework-session 包可以很好的帮助开发者处理 session,支持多种 session 存储方式、支持分布式部署和配置自定义。使用起来非常便捷和可靠。
参考
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/198788