[发明专利]网络应用中的数据提交方法及装置有效
| 申请号: | 201410459597.6 | 申请日: | 2014-09-10 |
| 公开(公告)号: | CN104184832B | 公开(公告)日: | 2017-10-03 |
| 发明(设计)人: | 孙德彬;冯鸳鹤 | 申请(专利权)人: | 北京国双科技有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F17/30 |
| 代理公司: | 北京康信知识产权代理有限责任公司11240 | 代理人: | 李志刚,吴贵明 |
| 地址: | 100086 北京市海淀区*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 网络 应用 中的 数据 提交 方法 装置 | ||
技术领域
本发明涉及数据处理领域,具体而言,涉及一种网络应用中的数据提交方法及装置。
背景技术
发生请求重复提交的原因通常有两种:一是操作失误;二是系统处理时间过长使得用户不知该如何是好。请求重复提交在网页应用中是比较常见同时也是比较麻烦的,用户有时候会重复点击提交按钮,会导致多次请求提交,产生重复数据或是应用程序错误等问题。但是某些场合重复提交可能会导致非常严重的后果,例如,在进行在线支付的时候,如果服务器的响应速度太慢,用户难免会再次点击提交按钮,而这就有可能导致用户重复付款。
目前现有技术针对请求重复提交的问题往往是通过前端来进行验证的,但是,利用客户端实现防止请求重复提交是不安全或者是不可靠的,很容易被篡改。例如,表单提交完成后禁用提交按钮或者是跳转到其他页面等。利用服务器端实现防止请求重复提交是比较可靠的,同步令牌方法通过与客户端交互配合能防止请求重复提交,其基本原理为:服务器端在处理到达的请求之前,会将请求中包含的令牌值与保存在当前用户会话中的令牌值进行比较,看是否匹配。在处理完该请求后,且在答复发送给客户端之前,将会产生一个新的令牌,该令牌除传给客户端以外,也会将用户会话中保存的旧的令牌进行替换。这样如果用户回退到刚才的提交页面并再次提交的话,客户端传过来的令牌就和服务器端的令牌不一致,从而有效地防止了重复提交的发生。但是,同步令牌方法的拓展性比较差。
针对相关技术中利用服务端实现防止请求重复提交拓展性差的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种网络应用中的数据提交方法及装置,以解决利用服务端实现防止请求重复提交拓展性差的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种网络应用中的数据提交方法。该方法包括:接收用户请求,该用户请求用于请求提交网络数据;获取第一网络地址,其中,第一网络地址是上述用户请求对应的地址;获取用户请求对应的网络会话标识;基于第一网络地址和网络会话标识进行哈希计算,生成第一哈希值;在预设时间内判断队列中是否存储有与第一哈希值相同的哈希值,其中,该队列存储有预先提交的网络数据对应的哈希值;以及如果预设时间内队列中存储有与第一哈希值相同的哈希值,则拒绝用户请求提交网络数据。
进一步地,获取用户请求对应的网络会话标识包括:判断用户请求对应的用户的状态;如果用户请求对应的用户的状态为登陆状态,则将用户的标识作为网络会话标识;如果用户请求对应的用户的状态为游客状态,则将用户登录的客户端的网络地址作为网络会话标识。
进一步地,通过以下方式获取预设时间:查找配置文件,配置文件用于存储网络地址与时间的对应关系;从配置文件中查找第一网络地址对应的时间,并将查找到的时间作为预设时间。
进一步地,用户请求在网络入口处进行过滤,包括:获取预先设置的重复提交判断条件;判断用户请求是否满足重复提交判断条件;其中,如果用户请求满足重复提交判断条件,拒绝用户请求,如果用户请求不满足重复提交判断条件,接收用户请求。
进一步地,获取预先设置的重复提交判断条件包括:获取预先存储的用户访问网络地址的记录;判断用户在预设时间内是否再次访问网络地址;其中,如果用户在预设时间内再次访问网络地址,拒绝用户的请求;如果用户在预设时间内没有再次访问网络地址,接收用户的请求。
为了实现上述目的,根据本发明的另一方面,提供了一种网络应用中的数据提交装置。该装置包括:接收模块,用于接收用户请求,该用户请求用于请求提交网络数据;第一获取模块,用于获取第一网络地址,其中,第一网络地址是用户请求对应的地址;第二获取模块,用于获取用户请求对应的网络会话标识;计算模块,用于基于第一网络地址和网络会话标识进行哈希计算,生成第一哈希值;第一判断模块,用于在预设时间内判断队列中是否存储有与第一哈希值相同的哈希值,其中,队列存储有预先提交的网络数据对应的哈希值;以及拒绝模块,用于如果预设时间内队列中存储有与第一哈希值相同的哈希值,则拒绝用户请求提交网络数据。
进一步地,第二获取模块包括:第二判断模块,用于判断用户请求对应的用户的状态;第一设置模块,用于如果用户请求对应的用户的状态为登陆状态,则将用户的标识作为网络会话标识;第二设置模块,用于如果用户请求对应的用户的状态为游客状态,则将用户登录的客户端的网络地址作为网络会话标识。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410459597.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





