Skip to content

Instantly share code, notes, and snippets.

@jasonheecs
Last active March 11, 2021 10:30
Show Gist options
  • Save jasonheecs/f9af5ea93966629ea00aaee61d8c3ce9 to your computer and use it in GitHub Desktop.
Save jasonheecs/f9af5ea93966629ea00aaee61d8c3ce9 to your computer and use it in GitHub Desktop.

Revisions

  1. jasonheecs revised this gist Mar 11, 2021. 1 changed file with 5 additions and 1 deletion.
    6 changes: 5 additions & 1 deletion session_timeout_poller.js
    Original file line number Diff line number Diff line change
    @@ -5,6 +5,8 @@ function pollForSessionTimeout() {
    request.onload = function (event) {
    var status = event.target.status;
    var response = event.target.response;

    // if the remaining valid time for the current user session is less than or equals to 0 seconds.
    if (status === 200 && (response <= 0)) {
    window.location.href = '/session_timeout';
    }
    @@ -13,4 +15,6 @@ function pollForSessionTimeout() {
    request.responseType = 'json';
    request.send();
    setTimeout(pollForSessionTimeout, (sessionTimeoutPollFrequency * 1000));
    }
    }

    window.setTimeout(pollForSessionTimeout, (sessionTimeoutPollFrequency * 1000));
  2. jasonheecs created this gist Mar 11, 2021.
    16 changes: 16 additions & 0 deletions session_timeout_poller.js
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,16 @@
    const sessionTimeoutPollFrequency = 5;

    function pollForSessionTimeout() {
    let request = new XMLHttpRequest();
    request.onload = function (event) {
    var status = event.target.status;
    var response = event.target.response;
    if (status === 200 && (response <= 0)) {
    window.location.href = '/session_timeout';
    }
    };
    request.open('GET', '/check_session_timeout', true);
    request.responseType = 'json';
    request.send();
    setTimeout(pollForSessionTimeout, (sessionTimeoutPollFrequency * 1000));
    }