行业标准网
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210766556.6 (22)申请日 2022.07.01 (71)申请人 中国银行股份有限公司 地址 100818 北京市西城区复兴门内大街1 号 (72)发明人 邓万昌 石毅  (74)专利代理 机构 北京三友知识产权代理有限 公司 11127 专利代理师 谷敬丽 杨丹 (51)Int.Cl. H04L 9/32(2006.01) (54)发明名称 一种实现接口幂等 性的方法和装置 (57)摘要 本发明提供了一种实现接口幂等性的方法 和装置, 涉及网络安全, 该方法应用于服务端, 包 括: 生成Token, 将 Token发送 至客户端和Redis服 务器; 所述Token在Redis服务器设有过期时间; 接收客户端的业务请求; 所述业务请求是客户端 根据Token生成; 从业务请求中获取Token, 向 Redis服务器查询是否存在相同Token, 若Redis 服务器中存在该相同Token, 则删除所述Token, 执行业务请求; 若Redis服务器中不存在该相同 Token, 则抛出异常, 返回错误信息至客户端, 以 使所述客户端展示所述错误信息。 本发明采用先 存入Redis, 后判断重复后再删除的方案, 实现 交 易的幂等 性。 权利要求书2页 说明书8页 附图3页 CN 115150097 A 2022.10.04 CN 115150097 A 1.一种实现接口幂等 性的方法, 其特 征在于, 应用于服 务端, 包括: 生成Token, 将Token发送至客户端和Redis服务器; 所述Token在Redis服务器设有过期 时间; 接收客户端的业 务请求; 所述 业务请求是客户端根据To ken生成; 从业务请求中获取Token, 向Redis服务器查询是否存在相同Token, 若Redis服务器中 存在该相同Token, 则删除所述Token, 执行业务请求; 若Redis服务器中不存在该相同 Token, 则抛 出异常, 返回错 误信息至客户端, 以使所述 客户端展示所述 错误信息。 2.如权利要求1所述的方法, 其特征在于, 生成Token, 将Token发送至客户端和Redis服 务器, 包括: 接收客户端发送的获取To ken请求; 根据所述获取To ken请求, 按照To ken生成参数, 确定唯一To ken; 将Token发送至客户端, 以使客户端将所述To ken存入Session中; 将Token发送至Redis服 务器。 3.如权利要求2所述的方法, 其特 征在于, 将To ken发送至Redis服 务器, 包括: 将Token作为键, 将用户信息作为 值, 组成键值对; 将键值对发送至Redis服务器, 以使Redis服务器存储所述键值对, 并设置所述键值对 的过期时间; 所述键值对若超出 所述过期时间, 则 删除所述键值对。 4.如权利要求3所述的方法, 其特征在于, 所述业务请是客户端将Token放到请求报文 的Http的报文头, 将用户信息放入报文体, 调用Restful  API接口, 根据报文头和报文体所 生成的业 务请求。 5.如权利要求4所述的方法, 其特征在于, 从业务请求中获取Token, 向Redis服务器查 询是否存在相同To ken, 若Redis服 务器中存在该相同To ken, 则删除所述To ken, 包括: 从业务请求中解析 出报文头, 从报文头中获取To ken; 根据所述获取To ken, 向Redis服 务器查询是否存在相同To ken; 若Redis服务器中存在该相同Token, 则验证报文体中的用户信息与Redis服务器中该 相同Token所属键值对的值是否匹配, 若匹配, 则 删除所述To ken。 6.如权利要求1所述的方法, 其特征在于, 所述删除所述Token的操作, 采用Lua表达式 实现。 7.一种实现接口幂等 性的装置, 其特 征在于, 应用于服 务端, 包括: Token生成模块, 用于生成Token, 将Token发送至客户端和Redis服务器; 所述Token在 Redis服务器设有过期时间; 业务请求接收模块, 用于接收客户端的业务请求; 所述业务请求是客户端根据Token生 成; 幂等性验证模块, 用于从业务请求中获取Token, 向Redis服务器查询是否存在相同 Token, 若Redi s服务器中存在该相同Token, 则删除所述Token, 执行业务请求; 若Redi s服务 器中不存在该相同Token, 则抛出异常, 返回错误信息至客户端, 以使所述客户端展示所述 错误信息。 8.如权利要求7 所述的装置, 其特 征在于, To ken生成模块, 具体用于: 接收客户端发送的获取To ken请求;权 利 要 求 书 1/2 页 2 CN 115150097 A 2根据所述获取To ken请求, 按照To ken生成参数, 确定唯一To ken; 将Token发送至客户端, 以使客户端将所述To ken存入Session中; 将Token发送至Redis服 务器。 9.如权利要求8所述的装置, 其特 征在于, To ken生成模块, 还用于: 将Token作为键, 将用户信息作为 值, 组成键值对; 将键值对发送至Redis服务器, 以使Redis服务器存储所述键值对, 并设置所述键值对 的过期时间; 所述键值对若超出 所述过期时间, 则 删除所述键值对。 10.如权利要求9所述的装置, 其特征在于, 所述业务请是客户端将Token放到请求报文 的Http的报文头, 将用户信息放入报文体, 调用Restful  API接口, 根据报文头和报文体所 生成的业 务请求。 11.如权利要求10所述的装置, 其特 征在于, 幂等 性验证模块, 具体用于: 从业务请求中解析 出报文头, 从报文头中获取To ken; 根据所述获取的To ken, 向Redis服 务器查询是否存在相同To ken; 若Redis服务器中存在该相同Token, 则验证报文体中的用户信息与Redis服务器中该 相同Token所属键值对的值是否匹配, 若匹配, 则 删除所述To ken。 12.如权利 要求7所述的装置, 其特征在于, 所述删除所述Token的操作, 采用Lua表达式 实现。 13.一种计算机设备, 包括存储器、 处理器及存储在存储器上并可在处理器上运行的计 算机程序, 其特征在于, 所述处理器执行所述计算机程序时实现权利要求1至6任一项所述 方法。 14.一种计算机可读存储介质, 其特征在于, 所述计算机可读存储介质存储有计算机程 序, 所述计算机程序被处 理器执行时实现权利要求1至 6任一所述方法。 15.一种计算机程序产品, 其特征在于, 所述计算机程序产品包括计算机程序, 所述计 算机程序被处 理器执行时实现权利要求1至 6任一所述方法。权 利 要 求 书 2/2 页 3 CN 115150097 A 3

PDF文档 专利 一种实现接口幂等性的方法和装置

文档预览
中文文档 14 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种实现接口幂等性的方法和装置 第 1 页 专利 一种实现接口幂等性的方法和装置 第 2 页 专利 一种实现接口幂等性的方法和装置 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-03-03 12:16:45上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。