我们正面临客户端超时问题,即未调用失败调用。
问题如下所示:
在超时的情况下,我们需要调用对用户的失败调用,以通知他发生了错误并且超时。但调用没有被调用:
initOption.js:
var wlInitOptions = {
.
.
// # Worklight server connection timeout
timeout: 10000,
// # Function to handle failure of Request Timeout
onRequestTimeout : function (error) {
WL.SimpleDialog.show(
"System Error: Request Timeout",
error,
[{text: "Close", handler: null}]
);
},
.
.
};
Worklight版本6.2
如果需要额外的代码共享,请告诉我。
由于
Edite:
申请流程:
一旦用户启动应用程序,它将连接到WL服务器,然后用户将点击登录按钮,这将触发和适配器方法"登录"。
登录过程完成后,它会再次调用获取用户数据并将其提取到设备。
正如我所描述的,当用户点击登录时,应用程序将尝试从适配器调用身份验证功能。我们已经设定了应用程序的等待时间,等待响应回到10秒,如上面的男女同志所述。
如果应用程序没有收到回复,那么我们需要向用户显示一个带有相应文本的对话框。
如果我将超时从10秒增加到30秒,问题就会得到解决。但是,我需要将超时保持10秒,并在超时时向用户显示一个对话框。
答案 0 :(得分:0)
代码中提到的超时值是在客户端和服务器之间,但在适配器过程和后端之间存在额外的超时;你会希望这些正确同步/对齐/定时。
您是否在适配器XML中使用requestTimeoutInSeconds
?
在此处阅读更多内容:IBM Worklight 6.0.0.1 - Timeout setting in Adapters