关于重复提交的问题

NFSP 2010-06-10 03:51:45
现有一个页面A,这个页面上有很多超链接(每个超链接代表不同的含义),但都是提交到同一个action,当点其中一个action后页面跳转到另一个页面B,但是在B页面上如果用户不断刷新就会发生重复提交的问题。为此在B页面使用了令牌机制,现在用户是无法在B页面重复提交了,但是原来A页面的所有超链接也都不能用了,请问要如何识别何时是正常提交,何时又是重复提交?
...全文
185 17 打赏 收藏 转发到动态 举报
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"

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧