我有一个静态页面(静态,我的意思是html,css和javascript在页面上修复)。
在服务器端,我可以告诉(基于服务器端会话信息)这是否是特定用户首次加载页面。现在,基于这个细节,我想发信号通知前端(例如通过在响应头中设置一些东西,可能?),这样页面上的javascript函数可以根据这是否是第一次用户执行某些操作已登陆此页。
实际为该页面提供服务的服务器是Nginx,处理逻辑,会话等的服务器是Tornado。所以我想在龙卷风中做一些事情,然后指示nginx提供静态页面。
这可行吗?如果是这样,最强有力的方法是什么?
答案 0 :(得分:4)
您可以使用Cookie实现此目的:http://www.quirksmode.org/js/cookies.html 使用cookie,您将在第一个视图上发送带有响应标头的特定cookie。然后每次加载页面时,让您的javascript检查特定的cookie
或使用本地存储:http://diveintohtml5.info/storage.html 与cookie方法类似,但在第一个视图中,javascript在本地存储中存储key = value对,并在每次加载页面时检查它。这些方面的东西:
(function () {
window.onload = function () {
if (localStorage.getItem("SeenBefore")) {
// Not first time viewed
} else {
localStorage.setItem("SeenBefore", true);
// First view
}
}
}())
另一种选择是,在服务器端,您可以在第一次查看页面时设置会话变量,然后在每次用户发送页面请求时检查agianst。这也可以使用cookies来实现。