1

我在我的应用程序中指定了以下设置,但应用程序没有超时?

timeout: 60000 ,
heartBeatIntervalInSecs: 5 * 60

我已经修改了我的代码,并在连接断开时尝试重新加载应用程序。它要求用户重新加载或关闭应用程序。但是这两个功能都不能正常工作。该事件被正确触发,但指定的库函数在此处未按预期工作。关闭功能只是将 App 带到后台并杀死 App 进程。

onConnectionFailure: function (){ 
    WL.SimpleDialog.show("Communication Failure", "An unexpected server connection error has occurred. Please try again later.", 
    [{text : 'Reload',  handler : function () {   WL.Client.init(wlInitOptions); }} ,       {text : 'Close',handler : function () {  WL.App.close(); }  } ,     ]);     }

还有什么我必须设置的吗?

谢谢

4

1 回答 1

2

如果需要超时,请尝试将以下内容添加到初始化选项 obj 中:

{ 
 Timeout: 60000,
 heartBeatIntervalInSecs: 5 * 60,
 connectOnStartup : true,
 onConnectionFailure : function () { 
      alert('failed');
   }
}

如果在60000ms 之后没有连接到 Worklight Server,您应该会收到failed警报。

文档在这里。另请注意,超时不仅仅适用于该初始化调用。请参阅以下内容:

一个整数值,以毫秒为单位表示超时。超时影响从应用程序到 IBM® Worklight® Server 的所有调用。如果未指定,则使用 30,000 毫秒(30 秒)的超时。

但是,这不会注销用户。我假设您需要在服务器上设置一些会话过期数据以在一定时间后注销用户。您可能需要查看WL.Client.logout

于 2013-04-24T18:10:39.210 回答