Να η δική μου low overhead λύση:
1. BLOCKED SCRIPT
1 2 3 4 5 6 7 | window.setTimeout('retainSession()', 240 * 1000);
function retainSession() { var img = new Image(1, 1); img.src = '/Components/SessionRetainer.ashx'; window.setTimeout('retainSession()', 240 * 1000); } |
2. Το SessionRetainer είναι ένας απλούστατος IAsyncHttpHandler ο οποίος υλοποιεί επίσης και το IReadOnlySessionState, και δεν επιστρέφει τίποτα, αλλά θέτει το Response.Cache σε non-cacheable (αλλιώς o browser δεν θα καλέσει τον handler πάνω από μία φορά).
3. Το javascript καλεί τον handler κάθε 4 λεπτά, ενώ το session expiration από το web.config είναι ορισμένο στα 5 λεπτά.
Μην αφήνετε τα media να σας "ταΐζουν"!