2011-04-11 48 views
1

我試圖實現GWT一個簡單的會話管理機制,我還不太清楚,如果我猜中了:GWT - 獲取會話管理權

  1. 首先,在onModuleLoad,我檢查如果存在sessionID cookie。如果存在,我打電話給服務器,看它是否仍然有效。如果是,我返回包含sessionID和完整用戶名的User對象(我需要在我的應用程序中)。
  2. 如果它不存在,我將顯示一個Login對話框。用戶輸入用戶名和密碼。我打電話給我的AuthenticationService,檢查用戶名+密碼是否有效,然後返回User對象。 sessionID被存儲在cookie中。
  3. 當登出時,我刪除了sessionID cookie。

這是會話ID創建方式:

String sessionID = UUID.randomUUID().toString(); 

這是到目前爲止,正確嗎?

回答

2

GWT session management

這可能幫助了。我也採用了你的方法,在那裏我需要更廣泛的用戶訪問控制。你也應該看看SSL。採用適合您需求的方法。

0

可能這會幫助你。在我的GWT應用程序在客戶端我想獲得session.o爲此目的我拿了一個計時器,併爲每一個事件的屏幕我檢查Timer.If定時器是加速指定的時間然後我渲染登錄面板。詳細代碼 See this

1

不需要有計時器,只需在客戶端設置cookie過期。一般來說,在允許的「活動」時間範圍內的每個客戶端請求都應該更新cookie的到期(向前移動)和服務器端會話到期(!重要)。