2014-01-08 34 views
0

我有一個實時問題。我想在4分鐘後向用戶顯示彈出窗口,表示您的會話將在接下來的1分鐘內過期。如果用戶點擊繼續,請點擊繼續以保持活動狀態,然後最終增加會話時間。如何在不使用任何第三方控件的情況下在Asp.net MVC 3.0中實現這一點。在MVC 4.0中創建會話到期限制

+0

在js中啓動一個定時器,4分鐘後詢問,如果用戶點擊繼續發送ajax調用到一個單獨的動作來更新會話? – scheien

回答

1

下面是一個快速示例,只是從w3c學校文檔放在一起。我想通過使用jQuery,SignalR等可以實現其他方法,但是你沒有提到第三方控件。

var myVar=setInterval(function(){myTimer()},240000); 

function myTimer() 
{ 
    // perform a reset when we enter the function 
    window.clearInterval(myVar); 

    var r=confirm("Session will expire in 1 minute. Click OK to stay."); 
    if (r==true) 
    { 
     // perform ajax call to renew the session. 
     // perform other task like refresh elements or even the page. 

     // get response from ajax call, then restart the interval. 
    } 
} 
+0

請告訴我一件事,如何重新發一次會話。只是爲它分配一個值將重置它,以及我必須在calncel中執行的操作,以便它不會重置會話。請建議我。 – Sweetie

+0

這取決於你如何定義你的會話。你只是依靠內置的會話嗎?這將更新來自客戶端(瀏覽器)的每個請求的計時器。 – scheien

+0

如果我沒有記錯,會話的默認時間跨度爲20分鐘。 – scheien