[英]Login page session timeout for kiosk
我们有一个用Delphi和Intraweb编写的基于Web的产品,可以在公共信息亭(全屏)上运行。
是否可以使用Intraweb显示不属于任何会话的登录页面(仅是标准Intraweb页面),因此仅在用户成功登录后才创建会话?
我们发现最好的方法是每隔30秒左右使用Javascript向Intraweb发出AJAX请求,以使Intraweb认为页面仍在使用中,因此不会使会话超时。
Javascript(每30秒调用一次Intraweb AJAX方法):
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function(event) {
window.setInterval(function() {
executeAjaxEvent("", null, "ResetSessionTimer", false, null, true);
}, 30000);
});
Delphi(私有方法和注册回调):
procedure TfrmLogin.ResetSessionTimer(EventParams: TStringList);
begin
//Intraweb does everything for us, we just need this method to exist
end;
WebApplication.RegisterCallBack('ResetSessionTimer', ResetSessionTimer);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.