社区
Web 开发
帖子详情
关于重复提交的问题
NFSP
2010-06-10 03:51:45
现有一个页面A,这个页面上有很多超链接(每个超链接代表不同的含义),但都是提交到同一个action,当点其中一个action后页面跳转到另一个页面B,但是在B页面上如果用户不断刷新就会发生重复提交的问题。为此在B页面使用了令牌机制,现在用户是无法在B页面重复提交了,但是原来A页面的所有超链接也都不能用了,请问要如何识别何时是正常提交,何时又是重复提交?
...全文
185
17
打赏
收藏
关于重复提交的问题
现有一个页面A,这个页面上有很多超链接(每个超链接代表不同的含义),但都是提交到同一个action,当点其中一个action后页面跳转到另一个页面B,但是在B页面上如果用户不断刷新就会发生重复提交的问题。为此在B页面使用了令牌机制,现在用户是无法在B页面重复提交了,但是原来A页面的所有超链接也都不能用了,请问要如何识别何时是正常提交,何时又是重复提交?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ZeekerLin
2010-06-11
打赏
举报
回复
应该是判断是否重复提交的方法有问题,你没有区分好A页面多个请求的区分,你当成了同一类请求,一旦有过一次请求,其它请求都被当成了重复提交了。
你可以参考
利用struts的同步令牌机制避免form的重复提交
恶魔
2010-06-11
打赏
举报
回复
struts里有个TOKEN用这个吧,实现防止表单重复提交,你的第一个页面也不会出现链接不好使的问题了,我试过的
wenwengo
2010-06-11
打赏
举报
回复
[Quote=引用 8 楼 zyc2009 的回复:]
只有一个action怎么加参数
[/Quote]
你从页面跳转到Action里面不是有路径吗,在那后面加,然后在Action里面根据参数判断是从哪个页面跳过来的
NFSP
2010-06-10
打赏
举报
回复
[Quote=引用 9 楼 ronniegxq 的回复:]
不明白楼主的意思,如果此时你已经到了b页面,那么你怎么去点a页面的链接
如果此时你在a页面,你说所有连接都不能用,那你怎么能去b页面。
[/Quote]
B页面是在新窗口中
NFSP
2010-06-10
打赏
举报
回复
我没说明白。。。。
我说的链接不能用不是指真的不能用,是说你再点A页面的链接会被当做是在重复提交而转到别的页面
lihui820905
2010-06-10
打赏
举报
回复
真的很佩服那些还能给出解答方案的人
lihui820905
2010-06-10
打赏
举报
回复
哎,看来我语文没学好
charles_wang8888
2010-06-10
打赏
举报
回复
如果提交了之后,把按钮 失效之,invalidate,然后就无法重复提交了
ronniegxq
2010-06-10
打赏
举报
回复
不明白楼主的意思,如果此时你已经到了b页面,那么你怎么去点a页面的链接
如果此时你在a页面,你说所有连接都不能用,那你怎么能去b页面。
NFSP
2010-06-10
打赏
举报
回复
只有一个action怎么加参数
wenwengo
2010-06-10
打赏
举报
回复
加个参数 判断是从哪个链接跳过来的
YangWenChaoX
2010-06-10
打赏
举报
回复
在action里用一个数组记住是从哪个超链接来的。。。
NFSP
2010-06-10
打赏
举报
回复
怎么说话都说不清了。
在A页面saveToken,然后在B页面判断isTokenValid,为true的话就不是重复提交,正常执行;为false的话就判断为重复提交,跳转到别的页面。
gulang76
2010-06-10
打赏
举报
回复
页面逻辑有问题,好好想想
izard999
2010-06-10
打赏
举报
回复
[Quote=引用 2 楼 zyc2009 的回复:]
在B页面判断isTokenValid,所有连接都是提交到同一个action,action都是提交到同一个页面
[/Quote]
这句话很矛盾也
NFSP
2010-06-10
打赏
举报
回复
在B页面判断isTokenValid,所有连接都是提交到同一个action,action都是提交到同一个页面
Java技术栈
2010-06-10
打赏
举报
回复
很好奇 为什么刷新B页面为什么重复提交 ?
使用重定向了没 struts配置文件中 type="redirect"
蓝色梦幻留言板V2.80多用户正式版
仿xp界面,全面的界面美化和优化,实现了系统级,管理员级和用户级 三级管理模式,可以在多用户模式与单用户模式间自由切换,支持多网友 回复,实现了模糊检索,可以防止信息的
重复
提交
,自由、灵活、方便的 系统配置和用户管理,支持悄悄话设定,容错处理更具人性化,简便的操作, 详细的鼠标提示信息,全方位的安全设计,完善的用户信息收集,为企事业 单位/个人与客户之间搭建完美的交流空间,是最方便、快捷的客户信息收集 渠道。 默认系统管理员帐号:admin 默认系统管理员密码:admin
防止表单
重复
提交
(java实现)
一、场景 由于用户误操作,多次点击表单
提交
按钮。 由于网速等原因造成页面卡顿,用户
重复
刷新
提交
页面。 黑客或恶意用户使用postman等工具
重复
恶意
提交
表单(攻击网站)。 这些情况都会导致表单
重复
提交
,造成数据
重复
,增加服务器负载,严重甚至会造成服务器宕机。因此有效防止表单
重复
提交
有一定的必要性。 二、使用AOP自定义切入实现 实现原理: 自定义防止
重复
提交
标记(@AvoidRepeatableCommit)。 对需要防止
重复
提交
的Congtroller里的mapping方法加上该注解。 新增A
Ajax
重复
提交
问题
处理方案
Ajax
重复
提交
问题
处理方案 注:ajax
重复
提交
原因,是ajax是异步的,在网络延迟或者服务器卡顿时候,多次点击
提交
按钮会
重复
提交
。 一、方案1,简单方式处理ajax
重复
提交
,使用变量控制 1.js代码 //标记是否
提交
var isSubmit=false; $('#Submit').click(function(){ if(isSubmit)return false; var name=$('#Name').val();
Java中的表单
重复
提交
问题
问题
:使用forward转发请求后,再次刷新当前页面,会进行
重复
提交
; 例子:使用LoginServlet进行登录,成功后跳转到login页面,刷新当前页面,再次直接进行了登录;如果这是支付、买票等页面,
重复
提交
将导致严重后果。因此要解决
重复
提交
的
问题
。 为了能够解决
重复
提交
问题
,关键在于:能够标志一次
提交
,从而识别出该
提交
已经处理。下面是主要处理过程: /*login.jsp页面,主要作用是...
java后端解决
重复
提交
问题
一、为什么会出现
重复
提交
? 主要是由于网络的延迟
问题
以及页面刷新的操作。 二、表单的
重复
提交
会导致的
问题
? 主要能够造成很多脏数据。 三、解决的办法: 3.1 前端解决办法:通过前端的方法将
提交
按钮变灰。对于前端的办法这里就不做演示了,因为前端的控制虽然能够防止数据的
重复
提交
但是治标不治本。这里主要介绍第二种方法。 3.2 后端解决: 思路:主要是利用唯一Token
Web 开发
81,122
社区成员
341,744
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章