Asp.net-Mvc

在 ASP MVC 中使用 cookie 儲存會話

  • June 24, 2018

在過去的幾年裡,將整個會話儲存在 cookie 中一直是 Rails 的標準 - 有沒有一種簡單的方法可以用 ASP MVC 實現類似的功能?

預設情況下,Session / TempData 中的任何內容都儲存在伺服器的記憶體中。在 web.config 中,這可以更改為 SQL 儲存/伺服器端記憶體。我希望能夠將這些對象保存在 cookie 中。

看起來我可以實現一個自定義的 Session-State Store Provider。有沒有更簡單的方法?

是的,實現一個自定義狀態 session-provider。不,afaik 沒有更簡單的方法。

附言。它並不像看起來那麼糟糕,即 > 一半的odbc 樣本正在寫入數據庫。

我認為將會話 ID(雜湊或其他)儲存在 cookie 中,然後使用該 ID 從記憶體/數據庫/您喜歡的任何儲存中獲取會話數據會更有效。將完整的會話狀態保存在 cookie 中會不必要地增加頻寬。

另外,請記住安全性:如果 cookie 包含身份驗證資訊或其他敏感數據並且您不小心,它很容易被使用者破解以獲得特權或以其他方式乾擾您的應用程序(加密數據也很糟糕,因為那時您必須對加密數據進行 base-64 編碼,這會進一步浪費頻寬和處理時間)。你永遠不應該相信使用者的輸入。

引用自:https://stackoverflow.com/questions/1651364