我正在與Spring 4 mvc
應用程序一起使用mysql
數據庫,tomcat
服務器。 基本上,我正在創建一個將由Angular JS
使用的Spring休息。使用Cookies避免Spring Rest應用程序中的會話複製
注:我不使用Spring security
爲了避免在clustered environment
情況下會話複製,我使用cookie
approach.On登錄,我生成one unique session id
(using java UUID
),並用它來創建一個cookie
,然後在響應中設置cookie。並將該會話ID與任何用戶數據一起存儲在數據庫中。
爲了驗證每個剩餘的API,我寫了一個Spring interceptor
,它將攔截每個其他API調用,然後檢查請求中是否存在cookie。如果存在,我獲取會話id值並使用它通過數據庫調用來檢查它是否有效。在註銷時,我正在刪除cookie。
對我在做什麼的基礎上面所解釋的,我有幾個問題:
1) Is my approach correct? or do you see any flaw in it.
2) Let me know if there is any other better method to achieve the same i.e. to avoid session replication.
3) Since, I am not using any HTTP session, how do I achieve something like session-timeout or do i even need it?