【发布时间】:2013-05-30 18:18:48
【问题描述】:
我有一个使用 ajax 并每 10 秒执行一次以更新一些数据的网络应用程序。 我设置了一个 PHP 会话,在 60 分钟不活动后 php 会话终止并将用户踢出页面,但在此页面中会话永不过期,我猜这是因为 Ajax 调用每 10 秒执行一次,服务器刷新“超时”,我的会话在我不执行 ajax 的其他页面上运行良好。你们认为我在这个页面中的问题是因为 ajax 每 10 秒调用一次?
我的 Jquery 代码:
delay(function(){
check();
}, 10000 );
function check()
{
$.ajax({
dataType: "json",
url: "lead.php",
cache: false,
success: function(msg){
//Do something
}
});
}
【问题讨论】:
-
当然,您已经回答了自己的问题。如果问题只出在有ajax的页面上,并且如果它每10s发送一次请求,它真的会重置超时。您可以通过手动跟踪会话超时来解决此问题。
-
根据您对情况的描述,您对问题的评估似乎是准确的。您有什么问题需要我们帮助您解决吗?
-
感谢您的帮助。如何继续跟踪会话,或者如何在 30 分钟不活动后终止会话?
-
@Aneri 我很想知道 php 页面是如何知道请求来自哪里的。 http 标头中是否包含 cookie 或其他跟踪设备?
-
lead.php是否返回了一些机密数据?如果没有,请尽量不要在此页面上开始会话或使用 Aneri 的答案。