Javascript 在一个站点中包含跨多个页面持久检索的json数据。。。最佳实践?

Javascript 在一个站点中包含跨多个页面持久检索的json数据。。。最佳实践?,javascript,ajax,json,jsp,Javascript,Ajax,Json,Jsp,在这个站点上,每个页面都由多个.jsp文件组成。有一个主页包含大部分页面内容,但导航由nav.jsp处理,顶部标题部分由top-section.jsp、footer.jsp处理,等等 页面内容由从中间件服务器通过json检索的数据填充。对于主页(即包含大量页面特定数据的页面部分),通过ajax调用检索数据,该调用使用登录的用户id获取所需内容 我的问题是,如何在top-section.jsp中包含一些检索到的数据。这个页面很简单(我在这里使用硬编码数据,但实际上这些数据应该是特定于登录用户的):

在这个站点上,每个页面都由多个.jsp文件组成。有一个主页包含大部分页面内容,但导航由nav.jsp处理,顶部标题部分由top-section.jsp、footer.jsp处理,等等

页面内容由从中间件服务器通过json检索的数据填充。对于主页(即包含大量页面特定数据的页面部分),通过ajax调用检索数据,该调用使用登录的用户id获取所需内容

我的问题是,如何在top-section.jsp中包含一些检索到的数据。这个页面很简单(我在这里使用硬编码数据,但实际上这些数据应该是特定于登录用户的):

哈拉尔·尼文 这一点包含在每个页面中,所以我想抓住名称(“Harald Niven”和帮助url)一次,然后在站点的每个页面中使用它。假设与中间件的通信是通过返回json的ajax调用进行的,那么最好的方法是什么

当我为每个页面加载数据时,这很简单,我有一个用于该页面的自定义js文件,可以获取所需的数据,但是,这个顶部部分从未更改,因此每次执行ajax请求并解析响应似乎都是浪费时间的我如何抓住这一点,并在用户登录的整个时间内保持它?

编辑:由于此应用程序的要求,会话/cookie已退出,我无法写入数据库。。。只能以非常有限的方式阅读(前端人员访问数据库的任何请求都需要大量的批准和解释,因此如果我可以避免走这条路,我希望如此)

@rg88

您需要实现会话管理,理想情况下,在所有网站中,人们使用不同的数据库来跟踪用户

因此,您需要将从json对象检索到的用户登录信息与sessionID一起存储在track数据库中

否则,如果您想采用简单的方法,可以将其存储在cookies中,这不是一个好的做法。

@rg88

您需要实现会话管理,理想情况下,在所有网站中,人们使用不同的数据库来跟踪用户

因此,您需要将从json对象检索到的用户登录信息与sessionID一起存储在track数据库中


否则,如果您想使用简单的方法,您可以将其存储在cookies中,这不是一个好的做法。

会话和cookies都不可用于此应用程序,我无权保存/更新数据库。。。仅检索,甚至是非常有限的。还有一个选项是将值存储在隐藏的div中??例如,页眉或页脚可能对所有页面都是公用的。请将值存储在某个隐藏的div或隐藏的span中,然后在任何需要的地方检索。@rg88,cookies应该是正确的,您可以写入和读取javascript,并在会话结束后使其过期。@rg88您是否同意上述任何一种…方法??我喜欢将数据粘贴到dom元素中的想法。会话和cookie都不可用于此应用程序,我无权保存/更新数据库。。。仅检索,甚至是非常有限的。还有一个选项是将值存储在隐藏的div中??例如,页眉或页脚可能对所有页面都是公用的。请将值存储在某个隐藏的div或隐藏的span中,然后在任何需要的地方检索。@rg88,cookies应该是正确的,您可以从javascript中写入和读取内容,并在会话结束后使其过期。@rg88您是否同意上述任何一种……方法??我喜欢将数据粘贴到dom元素中的想法。
<div id="userinfo">Harald Niven | <a href="nivenhelp?id=12345">Help</a></div>