zoukankan      html  css  js  c++  java
  • 如何防止控制客户端使其用同一帐户重复登录系统

    维护一online表,查看有登陆,就不允许再次登陆,以sessionid作为唯一标识符号,也可以产生一个GUID发到COOKIE中,以区分不同的CLIENT,再佐以JS,可以达到更好的效果,比如离开后自动离线

    解决代码:

    public virtual void Application_Start(object sender, EventArgs e)
    {
    // reset the mailer indicator
    Application["MailerStatus"] = "All Mailings Complete";

    // initialize a datatable for users online
    DataTable objUserTable = new DataTable();
    objUserTable.Columns.Add("SessionID",System.Type.GetType("System.Guid"));
    objUserTable.Columns.Add("PeopleID",System.Type.GetType("System.Int32"));
    objUserTable.Columns.Add("ShowDetail",System.Type.GetType("System.Boolean"));
    DataColumn[] pk = new DataColumn[1];
    pk[0] = objUserTable.Columns[0];
    objUserTable.PrimaryKey = pk;
    Application["UserTable"] = objUserTable;
    }

    /**////
    /// The Session_Start event adds user session information to
    /// Application["UserTable"].
    ///
    public virtual void Session_Start(object sender, EventArgs e)
    {
    Application.Lock();
    //Application.Lock ();
    DataTable objUserTable = (DataTable)Application["UserTable"];
    DataRow objRow = objUserTable.NewRow();
    Guid objGuid = Guid.NewGuid();
    objRow[0] = objGuid;
    Session["PfSessionID"] = objRow[0];
    objRow[1] = 0;
    objRow[2] = false;
    objUserTable.Rows.Add(objRow);
    Application["UserTable"] = objUserTable;
    Application.UnLock();
    }


    /**////
    /// The Session_End event deletes user session information from
    /// Application["UserTable"].
    ///
    public virtual void Session_End(object sender, EventArgs e)
    {
    Application.Lock();
    DataTable objUserTable = (DataTable)Application["UserTable"];
    objUserTable.Rows.Find((Guid)Session["PfSessionID"]).Delete();
    Application["UserTable"] = objUserTable;
    Application.UnLock();
    }

  • 相关阅读:
    Android中ProgressDialog的应用
    Content的startActivity方法需添加FLAG_ACTIVITY_NEW_TASK flag
    android onKeydown
    8 个最优秀的 Android Studio 插件
    Android 异步加载图片,使用LruCache和SD卡或手机缓存,效果非常的流畅
    Android提供的LruCache类简介
    Android设计中的.9.png与Android Studio中的设置
    js实现双击后网页自己主动跑-------Day55
    Oracle经常使用函数
    《R实战》读书笔记三
  • 原文地址:https://www.cnblogs.com/Apollo/p/382244.html
Copyright © 2011-2022 走看看