我有一個JSP頁面,它接受來自用戶的輸入,當用戶按下SAVE時,數據會傳送到服務器以及用於驗證用戶的JSESSION ID。JSessionID休息10分鐘後進入休息期。如何在JSP頁面中跟蹤時間
現在,它可能會發生用戶按下保存按鈕後,10 min.In這種情況下,JSESSIONID將到期,服務器將拋出一個異常,這將是visibe用戶
我想是火虛每隔9分鐘查詢一次服務器,以便Jsessionid不會過期。現在,我如何在JSP頁面中保留時間的軌跡。
我有一個JSP頁面,它接受來自用戶的輸入,當用戶按下SAVE時,數據會傳送到服務器以及用於驗證用戶的JSESSION ID。JSessionID休息10分鐘後進入休息期。如何在JSP頁面中跟蹤時間
現在,它可能會發生用戶按下保存按鈕後,10 min.In這種情況下,JSESSIONID將到期,服務器將拋出一個異常,這將是visibe用戶
我想是火虛每隔9分鐘查詢一次服務器,以便Jsessionid不會過期。現在,我如何在JSP頁面中保留時間的軌跡。
您可以使用JavaScript在超時後向服務器發出AJAX調用。
舉例來說,假設你使用jQuery:
window.setInterval(
function() { $.get('ping.jsp'); },
9*60*1000);
文檔:
如果你不使用jQuery,你」必須用瀏覽器特別代替$.get
電話來自另一個庫的fic代碼或代碼。
或者,您可以使用Meta refresh或Refresh
標題,但正如該文章中所述,有許多不好的理由。然而,在一個看不見的iframe
它可能不是那麼糟糕。我仍然會自己使用JavaScript版本。
ok..What如果我想調用一個servlet說「myservlet」(這個servlet激發虛擬查詢)並且還傳遞一些存儲在變量「sessid」中的數據......我如何使用它你的sufggestion.Also如果我想使用Jquery,將複製粘貼你的代碼將工作,或者我需要寫或包含其他東西 – Sankalp
@Sankalp,你將不得不用'ping.jsp'替換你的servlet的路徑。如果你點擊jQuery.get文檔的鏈接,它將解釋如何傳遞數據。您還需要包含其他內容。 –
有計時器嗎?爲什麼不讓您的會話ID超時值更長?工作*周圍*會話超時似乎有點奇怪;你有沒有把它設置爲相對較低的10分鐘*原因*?當他們的會話超時而不是向他們展示一個異常時,做一些合理的事情會怎樣? –
@DaveNewton,一個區別是,如果瀏覽器窗口關閉,會話將在十分鐘後過期,而不是較長的時間段。 –
@SamuelEdwinWard很明顯。 –