1

我正在使用 IBM Worklight 6.1.0 并在 iOS 7 设备上进行测试。

在测试我的应用程序并尝试注销时,我仍然订阅了 eventSource。

这是我的代码是:

function logout() {
    console.log('logout');

    WL.Client.logout('FahrAuthRealm',{onSuccess:function(){
        WL.Client.updateUserInfo();
        console.log('logout Success');

        WL.Client.Push.unsubscribe("myPush", {
            onSuccess: function() {alert("unsubscribe myPush success");},
            onFailure: function() {alert("unsubscribe myPush failed");}
        });
        router.navigate("#home",true);
    }});
}

我的代码有问题吗?为什么我不能取消订阅 eventSource?

4

1 回答 1

2

我认为您可能应该首先取消订阅,然后才退出该领域......
也许这会更好:

function logout() {
    WL.Client.Push.unsubscribe("myPush", {
        onSuccess: function() {
            alert("unsubscribe myPush success");
            WL.Client.logout("FahrAuthRealm", {
                onSuccess: function() {
                    WL.Client.updateUserInfo();
                    router.navigate("#home",true);
                }
            });
        },
        onFailure: function() {
            alert("unsubscribe myPush failed");
        }
    });
} 
于 2014-07-10T13:32:14.527 回答