未调用Worklight客户端超时调用

时间:2015-07-13 14:17:02

标签: ibm-mobilefirst

我们正面临客户端超时问题,即未调用失败调用。

问题如下所示:

  1. 用户点击我们的应用程序中的登录。
  2. 4秒后,用户可以成功登录该应用程序。
  3. 我们回收Web服务服务器,用户需要17秒才能将响应恢复到超时的位置,因为我们已经将时间设置为10000毫秒作为我们的客户要求并且它保持在"登录&# 34;页面没有显示任何错误。在第二次尝试"登录"对于应用程序,响应将在4秒内完成,应用程序正常运行。
  4. 在超时的情况下,我们需要调用对用户的失败调用,以通知他发生了错误并且超时。但调用没有被调用:

    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秒,并在超时时向用户显示一个对话框。

1 个答案:

答案 0 :(得分:0)

代码中提到的超时值是在客户端和服务器之间,但在适配器过程和后端之间存在额外的超时;你会希望这些正确同步/对齐/定时。

您是否在适配器XML中使用requestTimeoutInSeconds

在此处阅读更多内容:IBM Worklight 6.0.0.1 - Timeout setting in Adapters