程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> .Net 如何限制用戶登錄的方法

.Net 如何限制用戶登錄的方法

編輯:ASP.NET基礎

名詞解析
       1.Cookies 按照英文單詞翻譯過來是“甜點”的意思。這個和我們計算機貌似沒有什麼關系。我們這裡說的Cookies是指服務器在暫存在計算機上的一段資料。

       2.Session 按照英文單詞翻譯過來是“會話”的意思。存在於服務器的內存中。

 限制用戶登錄的一下場景
        1。比如QQ 我們在一處登錄QQ之後。如果我們在另一台電腦上再次登錄這個時候就會被踢下線

        2。我使用的郵箱也有上面情況

     這樣做在很大的程度上面保證了。賬號的安全。

  怎麼樣實現
方法1 :    在用戶登錄時將用戶登錄狀態記錄數據庫中,每次登錄時我們在數據庫中查找用戶是否登錄。如果已經登錄,做出相關的業務處理
方法2:     把用戶登錄狀態的存在Session中
        方法1明顯有一個缺點,假設在服務器突然斷電的情況下。是不是就悲劇了。這個已經登錄的用戶的狀態就會亂,直接將導致用戶無法再次登錄所以我們這裡選在Cookies 和Session  來實現這個場景

  示例代碼

復制代碼 代碼如下:
if (Session["LOGIN_USER_LIST"] != null)
            {
                Dictionary<Guid,UserInfo>  Userlist=  Session["LOGIN_USER_LIST"] as Dictionary<Guid,UserInfo>;
                Guid LoginKey =new Guid();
                Guid.TryParse(CookieHelper.getCookie("LOG_USER_KEY"), out LoginKey);
                if (Userlist.Keys.Contains(LoginKey))
                {
                    //如何用戶登錄
                }
                else
                {
                    //如果用戶沒有登錄
                }


            }

希望上面簡單的代碼對大家有幫助

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved