2015-06-22 86 views
0

我想創建一個Web應用程序,用戶可以在其中創建會話,即使在離開頁面/瀏覽器之後,該會話仍可訪問。基於Web的頁面會話

一個例子是http://lichess.org,用戶轉到「創建遊戲」並創建頁面。即使會話結束後,該頁面仍然可以訪問;請參閱:http://en.lichess.org/i8pV0vEv

基本上我想知道的是,爲了創建類似的效果將需要什麼。多年來我已經編程噸,只是網絡環境對我來說是新的!斯卡拉似乎是一個競爭者,但我誠實地說,我不知道。也許JavaScript?

任何意見,將不勝感激,謝謝。

回答

0

如果您想永久存儲用戶會話數據,無論用戶是否在網站上,您都可以使用HTML 5的瀏覽器存儲設施。 您可以將數據以鍵值對的形式存儲在用戶瀏覽器中,數據將永久存在(基於您使用的瀏覽器存儲類型),並且您可以使用JavaScript輕鬆操作數據。 主要有兩種類型的瀏覽器存儲。

  • 本地存儲:將在那裏永久存在,並且可以隨時隨地訪問。
  • 會話存儲:當用戶關閉瀏覽器窗口時,將一直存在,直到頁面打開並清除。

對於您的要求我的建議是去本地存儲使用本地存儲

  • 可以很容易地使用JavaScript來操縱的

    優勢。

  • 將永久。
  • 因此,無需服務器端腳本,可以快速加載和管理。使用本地存儲的

缺點

  • 不會在瀏覽器不支持HTML5工作(支撐在IE 8,鉻4,Mozilla的3.5,野生4,歌劇11。5和以上)
  • 用戶將能夠操縱/刪除值(瀏覽器存儲值可以使用瀏覽器開發工具的資源選項來操作)
  • 如果用戶正在訪問in-cognito/in- (但將在會話期間存儲)
  • 數據限制至少爲5MB
  • 當用戶清除瀏覽器歷史記錄時,數據將被刪除。

進一步參考結賬w3schoold http://www.w3schools.com/html/html5_webstorage.asp

+0

我真的很感激寫您的評論所花費的時間。我會看看本地存儲,謝謝! – Chris

0

Web編程通常不需要會話,您需要cookie來模擬會話。您可以將其保存在客戶端的瀏覽器和數據庫中,以便將它們綁定在一起。或者,您可以使用瀏覽器會話,最終它也是一個cookie,但不能很好地擴展,因爲它保存在網絡服務器的內部機制中。

這裏沒有什麼特別的Scala,但是如果你想給Scala一個嘗試,看看Play framework。它非常適合初學者,並且已經內置了對Sessions,CookiesDatabase訪問需要的所有內容的支持。