3 Stimmen

Problem der Aufrechterhaltung der Benutzersitzung

Ich hatte die Idee, die Sitzungen meiner Benutzer am Leben zu erhalten, indem ich einen Webservice-Aufruf sende, eine Zeitüberschreitung für eine bestimmte Zeitspanne (etwa 15 Minuten oder so) einstelle und dann dieselbe Methode erneut aufrufe.

Das Problem ist, dass der Webservice ständig zu funktionieren scheint. Nicht alle 15 Minuten, wie ich dachte.

Einen Link finden Sie hier: Geige

Code hier:

(function($, window, document, undefined) {
    "use strict";

    var methods, 
        settings,
        timeout,
        type = 'sessionPing';

    methods = {
        init: function () { 
            settings = { time: 5000};

            methods.request.call(this);
        },

        request: function () { 
            console.log('just before clear' + timeout);
          clearTimeout(timeout);

            $.ajax({ type: 'POST',
                   url: '/echo/html/',
                   data: {
                    'html': 'Echo!'
                   },
                   success: function(data) {
                     timeout = setTimeout(methods.request(), settings.time);  
                       console.log('in success ' + timeout);
                   },
                   dataType: 'html'
                });  
        }
    };

    $.sessionPing = function(method) {
        // Method calling logic
        if (methods[method]) {
            return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
        } else if (typeof method === 'object' || !method) {
            return methods.init.apply(this, arguments);
        } else {
            $.error('Method ' + method + ' does not exist on jQuery.timeSince');
        }
    };

}(jQuery, window, document));

$(function() {
    $.sessionPing();
});

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X