worklight 中的会话超时通知

Posted

技术标签:

【中文标题】worklight 中的会话超时通知【英文标题】:Session Timeout Notification in worklight 【发布时间】:2014-09-08 16:18:41 【问题描述】:

我正在 IBM Worklight 6.2 中为我的组织创建一个应用程序。我已将 worklight.properties 中的会话超时属性设置为 5 分钟。

#######################################
    Idle session timeout in minutes
#######################################
serverSessionTimeout=5

它工作得很好,用户正在从应用程序中注销,但是,它没有通知会话超时发生。有什么方法可以通知用户他的会话将在一分钟左右到期?

【问题讨论】:

【参考方案1】:

Worklight 无法通知会话即将到期。

我的建议是在应用程序中创建一个本地计时器,以便大致了解何时会发生超时并相应地通知用户。

这可以通过例如在WL.Client.connectonSuccess 回调中实现setInterval 来实现(假设这是您连接到Worklight Server 的方式)。

可能是这样的:

function wlCommonInit() 
    WL.Client.connect(onSuccess: connectSuccess, onFailure: connectFailure);


function connectSuccess() 
    setInterval (timesUp, 240000);
    // other things ...


function connectFailure() 
    // ...


function timesUp() 
    alert ("Session will expire in 1 minute.");
    clearInterval();
    // Maybe show a WL.SimpleDialog instead with buttons 
    // to reset the timeout by performing some action against the server or some such.

【讨论】:

只是一个简短的问题,有什么方法可以让我知道会话已经过期吗? 您无法事先知道这一点。我猜你可以实现一个客户端计时器。

以上是关于worklight 中的会话超时通知的主要内容,如果未能解决你的问题,请参考以下文章

会话超时通知

IBM Worklight 6.1 - 构建和部署不可用?

关于 Worklight 中的推送通知?

IBM Worklight - 我可以更改 invokeProcedure 主机名和端口吗?

IBM Worklight 6.0.0.1 - 适配器中的超时设置

Worklight 6.1 中的默认推送通知声音