asp.net防止重复提交、重复刷新、后退页面过期的几种解决方案

asp.net防止重复提交、重复刷新、后退页面过期的几种解决方案,第1张

简单操作方法防后退和刷新Page_Load中加入Response.Cache.SetNoStore()//Session中存储的变量“IsSubmit”是标记是否提交成功的if (!IsPostBack)if (Session["IsSubmit"]==null)Session.Add("IsSubmit",false)if ((bool)Session["IsSubmit"]){//如果表单数据提交成功,就设“Session["IsSubmit"]”为falseSession["IsSubmit"] = false//显示提交成功信息TextBox1.Text = " * 提交成功!"//Response.Write("<scriptdocument.write('<div style=\"position:relativeleft:10pxtop:10pxwidth:90%height=+30px\" id=DivRule<font style=\"font-size: 14ptfont-family: 宋体, MS Songcolor: #4E4E4Eline-height: 14pt\" 警告: 网页已经过期</font</div" +//"<div id=Out0 style=\"position:relativeleft:20pxtop:+15pxwidth:90%\" 您申请的网页是用表单中提交的信息创建的。该网页已失效。

出现这种情况是因为当前程序 会员登录是用Session保存登录状态的, 默认的情况下,你登录成功之后20分钟内,不对当前网页进行操作或者是说不移动鼠标,页面的登录状态就丢失了,要求你重新登录就OK了。当然你可以使用web.config该更Session默认的值或者使用Cookie来保存登录状态。

其实这是处于对网站安全性考虑的。如果不设置页面过期,当你上传完一个文件后,你按浏览器上的上一页,点击刷新,服务器仍然会接受到你提交的信息。这样的话,给服务器造成很大压力和资源浪费,并且会受到部分人的攻击。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/54951.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-26
下一篇2023-02-26

发表评论

登录后才能评论

评论列表(0条)

    保存