Express WebApp如何存储/访问用户设置



IM当前开发了类似于仪表板/webbrowser主页的Nodejs/Express WebApp。数据根据用户的设置显示。目前,当用户登录时,我正在创建一个JSON文件(基于模板)。该JSON文件具有我需要访问的设置,以便在主页上显示信息。其中一些信息是:地理位置(City Country)访问天气API( 单位,预测日期等),电视节目列表(因此我可以从我的数据库中获取一集剧集),等等。

目前,当用户登录时,我正在阅读此文件大约4次。我敢肯定这不是一个好主意,尽管现在它正常工作,但我可以看到我将来会遇到的问题(当我添加更多设置和/或获得更多流量时)。

由于WebApp几乎完成了,所以我想解决这个问题。我正在考虑几个选择:

  1. 将用户设置保存在会话存储中(REDIS,例如)
  2. 将用户设置保存在cookie中
  3. 用户登录时一次读取文件,并以某种方式缓存

这样做的最佳选择是什么?

如果您想存储此信息客户端(既然您已经提到了cookie),则可以考虑查看JavaScript的localStorage API(或sessionStorage,如果您希望数据过期当用户关闭他/她的浏览器时)。

localStorage是一个关键:值对(就像您使用redis所获得的一样),但是数据在本地存储在用户的设备上。与任何客户端存储解决方案一样,您永远不应该在没有验证的情况下信任localStorage提供的数据,但它是为这种任务设计的工具。

最新更新