在做一个考试系统,用的是forms身份验证,但是因为登陆时创建了Cookie,所以如果直接复制考试页面的地址,可以重新打开考试页面,请问怎样控制才可以使用户不能二次进入考试页面?希望大家给些好的建议

解决方案 »

  1.   

    清空页面缓存
     #region 清空客户端页面缓存
        /// <summary>
        /// 清空客户端页面缓存
        /// </summary>
        public static void ClearClientPageCache()
        {
            HttpContext.Current.Response.Buffer = true;
            HttpContext.Current.Response.Expires = 0;
            HttpContext.Current.Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
            HttpContext.Current.Response.AddHeader("pragma", "no-cache");
            HttpContext.Current.Response.AddHeader("cache-control", "private");
            HttpContext.Current.Response.CacheControl = "no-cache";
        }
    #endregion
      

  2.   

    记录访问时间,cookie时间和服务器记录不一致就是错误的.
      

  3.   

    可不可以考虑在Cookie中写入第几次登录了,如果>1就不允许登录。
      

  4.   

    这个建议用Application保存,安全!cookie不安全