Worklight logoutSuccess auth领域未定义

时间:2013-11-12 16:41:45

标签: ibm-mobilefirst worklight-security

我无法让Worklight注销工作。

退出按钮:

<input type="button" value="Logout2" onclick="WL.Client.logout('AuthRealm',{onSuccess: WL.Client.reloadApp})" />

点击它时我得到:

onLogoutSuccess: realm: AuthRealm is undefined

但是这个领域定义得很好,并且点击后会调用此领域的注销功能。我调查了Worklight来源,发现问题在于:

onLogoutSuccess(transport=klass { request=klass, transport=XMLHttpRequest, readyState=4, more...})wlclient.js (line 1298)

因此错误来自:

if (typeof userInfo[realm] === "undefined") {
    WL.Logger.error('onLogoutSuccess: realm: ' + realm + ' is undefined');
    return;
} 

我应该在哪里设置userInfo?或者为什么抛出这个错误?我没有在示例源中找到任何信息。

1 个答案:

答案 0 :(得分:0)

我只能在我的设备尚未以任何方式连接到Worklight服务器时才能重现(尚未登录到领域,initOnStartup = false,没有适配器调用等)

如果客户端尚未与Worklight服务器通信,它似乎对该领域一无所知,因此在尝试注销该领域时会抛出错误。尝试添加检查以查看用户是否已登录到域,或确保用户在注销之前已连接到Worklight服务器。

即使他们尚未登录领域,设备也会知道该领域至少已连接到服务器一次。