大气JS在套接字打开后继续发送get请求

时间:2015-06-24 02:52:34

标签: push-notification long-polling atmosphere atmosphere.js

我使用Long Polling with Atmosphere JS进行会话超时,因此服务器会告诉我用户何时退出。

问题是,一旦订阅,Atmosphere JS每60秒发送一次get请求,重新启动用户会话并且永远不会将其注销。

我已经阅读了文档并进行了搜索,但无法找到阻止这种情况发生的任何方法。这是我的代码:

var socket = atmosphere;
var subSocket;

// subscribe
function subscribe() {
    var request = {
        url : "/web-service/notifier",
        transport: 'long-polling'
    };

    request.onMessage = function (response) {                     
        var jsonStringArray = response.responseBody.split('|');

        // go through each notification and convert from string to object
        $.each(jsonStringArray, function(index, elem){                        
            if (elem != ""){
                var parsedObject = JSON.parse(elem);

                // if notification states user is logged out, log them out
                if (parsedObject.action === 'LOGGED_OUT'){
                    // DO LOGOUT STUFF
                }
            }                                        
        });

    };

    subSocket = socket.subscribe(request);
}

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

这是多长时间轮询的工作原理,例如60秒后服务器将关闭/恢复连接(您已设置该值服务器端...检查您的代码)

- Jeanfrancois