文档章节

asp.net清除页面缓存,防止页面回退重复提交数据及防止同一用户同时登录

深圳大道
 深圳大道
发布于 2016/12/29 15:33
字数 402
阅读 7
收藏 0
//清除页面缓存,防止页面回退重复提交数据 在页面里做以下设置就可以使页面的缓存失效,每次都需要获取新页面。
        Response.Cache.SetCacheability(System.Web.HttpCacheability.NoCache);
        /*
        要防止同一用户同时登陆,首页应该记录在线用户的信息(这里与用户名为例),然后判断正在登陆的用户里面是否已存在。
        在这里使用一个cache存放已经登陆的用户名,但是还有一个问题就是要知道用户是什么时候离开系统的呢?这就要定期清除cache中的内容了,也就是设置一个cache的时间。这个时间可以跟用户的session值联系起来,刚好当用户session值失效的时候该用户在cache里面的信息也会被清空.
        这样就达到了防止同时登陆的效果,具体代码如下,放在登陆成功的地方:
        */
        string key = TextBox1.Text; //用户名文本框设为cache关键字 
        string uer = Convert.ToString(Cache[key]); //读取cache中用户相应的值
        //判断cache中是否有用户的信息,如果没有相关的值,说明用户未登陆
        if (uer == null || uer == String.Empty)
        {
            //定义cache过期时间

            TimeSpan SessTimeout = new TimeSpan(0, 0, System.Web.HttpContext.Current.Session.Timeout, 0, 0);

            //第一次登陆的时候插入一个用户相关的cache值,
            HttpContext.Current.Cache.Insert(key, key, null, DateTime.MaxValue, SessTimeout, System.Web.Caching.CacheItemPriority.NotRemovable, null);
            Session["ADMINID"] = TextBox1.Text;
            Response.Redirect("main.aspx");
        }
        else
        {
            //重复登陆
            Response.Write("<script>alert('您的账号已经登陆!');window.location='login.aspx';</script>");
        }


 

本文转载自:http://blog.csdn.net/smartsmile2012/article/details/8160842

深圳大道
粉丝 3
博文 877
码字总数 0
作品 0
深圳
架构师
私信 提问
JSP 防止网页刷新重复提交数据

网页如何防止刷新重复提交与如何防止后退的解决方法 提交后禁用提交按钮(大部分人都是这样做的) 如果客户提交后,按F5刷新怎么办? 使用Session 在提交的页面也就是数据库处理之前: if ses...

长平狐
2013/01/06
5.8K
0
javaweb开发之防止重复提交

一、产生表单重复提交可能的情况 1. 由于服务器缓慢或网络延迟等原因,导致用户重复点击提交按钮。 2. 使用forward方式已经提交成功,再次刷新成功页面导致重复提交。 3. 已经提交成功,通过...

小米米儿小
2013/12/05
3.2K
3
SpringMVC 防止表单提交的解决方案

在平时开发中,如果网速比较慢的情况下, 用户提交表单后,发现服务器半天没有响应,用户可能以为是自己没有提交表单,就会再点击提交按钮重复提交表单,所以在开发中我们需要防止表单重复提交 1....

陈小扁
2016/04/22
513
0
Asp.Net MVC 缓存

Asp.Net MVC 缓存 缓存是一种保存资源副本并在下次请求时直接使用该副本的技术。当 web 缓存发现请求的资源已经被存储,它会拦截请求,返回该资源的拷贝。 Web应用缓存技术大体上可以分为两类...

JoeSnail
2017/12/06
0
0
UPUPW K2.1 发布,PHP 全系列同时运行

UPUPW Kangle版全能服务器绿色平台K2.1修复了权限及兼容性问题,对网站支持更好,更易使用。 支持PHP全系列版本自由切换、同时运行;支持多站点绑定PHP任意版本或ASP/.NET2/4且不依赖IIS。 ...

UPUPW
2016/07/27
2K
8

没有更多内容

加载失败,请刷新页面

加载更多

golang-字符串-地址分析

demo package mainimport "fmt"func main() {str := "map.baidu.com"fmt.Println(&str, str)str = str[0:5]fmt.Println(&str, str)str = "abc"fmt.Println(&s......

李琼涛
今天
4
0
Spring Boot WebFlux 增删改查完整实战 demo

03:WebFlux Web CRUD 实践 前言 上一篇基于功能性端点去创建一个简单服务,实现了 Hello 。这一篇用 Spring Boot WebFlux 的注解控制层技术创建一个 CRUD WebFlux 应用,让开发更方便。这里...

泥瓦匠BYSocket
今天
6
0
从0开始学FreeRTOS-(列表与列表项)-3

FreeRTOS列表&列表项的源码解读 第一次看列表与列表项的时候,感觉很像是链表,虽然我自己的链表也不太会,但是就是感觉很像。 在FreeRTOS中,列表与列表项使用得非常多,是FreeRTOS的一个数...

杰杰1号
今天
4
0
Java反射

Java 反射 反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的 Class,Class 类 用于表示.class 文件(字节码)) 一、反射的概述 定义:JAVA 反射机制是在运行状态中,对于任...

zzz1122334
今天
5
0
聊聊nacos的LocalConfigInfoProcessor

序 本文主要研究一下nacos的LocalConfigInfoProcessor LocalConfigInfoProcessor nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/impl/LocalConfigInfoProcessor.java p......

go4it
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部