防止重复提交的方法有哪些
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,本篇内容主要讲解"防止重复提交的方法有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"防止重复提交的方法有哪些"吧!1 javascript ,设置一个
千家信息网最后更新 2025年02月04日防止重复提交的方法有哪些
本篇内容主要讲解"防止重复提交的方法有哪些",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"防止重复提交的方法有哪些"吧!
1 javascript ,设置一个变量,只允许提交一次
2 还是javascript,将提交按钮或者image置为disable
3 利用struts的同步令牌机制
利用同步令牌(Token)机制来解决Web应用中重复提交的问题,Struts也给出了一个参考实现。 基本原理:
服务器端在处理到达的请求之前,会将请求中包含的令牌值与保存在当前用户会话中的令牌值进行比较,看是否匹配。在处理完该请求后,且在答复发送给客户端之前,将会产生一个新的令牌,该令牌除传给客户端以外,也会将用户会话中保存的旧的令牌进行替换。这样如果用户回退到刚才的提交页面并再次提交的话,客户端传过来的令牌就和服务器端的令牌不一致,从而有效地防止了重复提交的发生。
if (isTokenValid(request, true)) { // your code here return mapping.findForward("success"); } else { saveToken(request); return mapping.findForward("submitagain"); } Struts根据用户会话ID和当前系统时间来生成一个唯一(对于每个会话)令牌的, 具体实现可以参考TokenProcessor类中的 generateToken()方法。 1.验证事务控制令牌,会自动根据session中标识生成一个隐含input代表令牌,防止两次提交 2. 在action中: if (!isTokenValid(request)) errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("error.transaction.token")); resetToken(request); // 删除session中的令牌 3. action有这样的一个方法生成令牌 protected String generateToken(HttpServletRequest request) { HttpSession session = request.getSession(); try { byte id[] = session.getId().getBytes(); byte now[] = new Long(System.currentTimeMillis()).toString().getBytes(); MessageDigest md = MessageDigest.getInstance("MD5"); md.update(id); bmd.update(now); return (toHex(md.digest())); } catch (IllegalStateException e) { return (null); } catch (NoSuchAlgorithmException e) { return (null); } }
到此,相信大家对"防止重复提交的方法有哪些"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
令牌
方法
客户
客户端
用户
生成
内容
服务器
机制
参考
同步
处理
学习
服务
实用
更深
有效
一致
事务
代表
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
四川省超级服务器云主机
防治校园欺凌 维护网络安全
广州拜登网络技术有限公司
软件开发合作框架协议合同范本
数据库怎样插入多个数据
连接数据库的ben 配置
萨摩耶互联网科技有限公司
政企部门网络安全建设建议
刺客信条数据库有什么用
学校网络安全检查实施方案
单片机软件开发系统有哪些
为什么登录游戏显示服务器繁忙
最顶级的互联网科技
网络安全法宣传培训
计算机网络技术从哪里学
简答题试述数据库及其特点
网络安全试卷四答案
数据库连接异常捕获
小皮面板怎么导入数据库
雨花台区旅游app软件开发
美军德国服务器
艾滋病网络安全知识竞赛
有没有网络安全类型的电影
交界钢琴谱软件开发
软件开发专业毕业设计怎么做
9月网络安全股票
林木种苗信息数据库
三代网络技术
网络安全是指计算机吗
用什么软件恢复数据库