CN115499399A - 一种重复提交请求的处理方法、装置、设备及存储介质 - Google Patents
一种重复提交请求的处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115499399A CN115499399A CN202211160562.3A CN202211160562A CN115499399A CN 115499399 A CN115499399 A CN 115499399A CN 202211160562 A CN202211160562 A CN 202211160562A CN 115499399 A CN115499399 A CN 115499399A
- Authority
- CN
- China
- Prior art keywords
- request message
- processed
- request
- data
- received
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
- H04L51/063—Content adaptation, e.g. replacement of unsuitable content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及一种重复提交请求的处理方法、装置、设备及存储介质,该方法包括:接收待处理的请求消息;将所述待处理的请求消息与历史接收到的请求消息进行匹配;若历史接收到的请求消息中包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为重复的请求消息,拦截并拒绝处理所述待处理的请求消息。本公开通过将接收到的待处理的请求消息与历史接收到的请求消息进行匹配,在匹配成功时确定待处理的请求消息为重复的请求消息,拦截并拒绝处理待处理的请求消息,能够避免对重复请求的多次处理,从而减少处理过程中产生的脏数据,同时降低服务器的处理压力。
Description
技术领域
本公开涉及信息处理领域,尤其涉及一种重复提交请求的处理方法、装置、设备及存储介质。
背景技术
网络请求在被提交至服务器接口时,由于网络延迟或同时段访问量较大,请求时间较长,终端设备可能无法及时收到服务器返回的提交请求成功的提示信息,或无法及时跳转到新页面,此时用户就有可能重复提交请求,而这加重了网络或服务器的压力,也对用户体验造成了不良影响,因此,如何对重复提交的请求进行处理,从而阻止重复提交的请求进入业务逻辑,是需要解决的技术问题。
发明内容
为了解决上述技术问题,本公开提供了一种重复提交请求的处理方法、装置、设备及存储介质。
本公开实施例的第一方面提供了一种重复提交请求的处理方法,该方法包括:
接收待处理的请求消息;
将所述待处理的请求消息与历史接收到的请求消息进行匹配;
若历史接收到的请求消息中包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为重复的请求消息,拦截并拒绝处理所述待处理的请求消息。
可选地,所述将所述待处理的请求消息与历史接收到的请求消息进行匹配,包括:
计算所述待处理的请求消息与历史接收到的请求消息的相似度;
响应于所述相似度大于或等于预设阈值,则确定所述待处理的请求消息与所述历史接收到的请求消息匹配。
可选地,所述将所述待处理的请求消息与历史接收到的请求消息进行匹配,包括:
提取所述待处理的请求消息中包含的数据以及所述待处理的请求消息的标识信息;
将所述数据和所述标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配;
若所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致,则确定所述历史接收到的请求消息和所述待处理的请求消息匹配。
可选地,所述将所述数据和所述标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配,包括:
将所述数据与所述标识信息按照预设格式进行组合,得到第一数据串;
基于预设的加密算法对所述第一数据串进行加密处理,得到第二数据串;
将所述第二数据串与历史接收到的请求消息对应的第三数据串进行匹配,其中所述第三数据串是通过将所述历史接收到的请求消息中包含的数据和标识信息按照所述预设格式进行组合,并通过所述加密算法对组合后得到的数据进行加密得到的;
若所述第二数据串和所述第三数据串一致,则确定所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致。
可选地,所述将所述待处理的请求消息与历史接收到的请求消息进行匹配,包括:
将所述待处理的请求消息与预设的历史时间段内接收到的请求消息进行匹配。
可选地,所述确定所述待处理的请求消息为重复的请求消息之后,所述方法还包括:
返回提醒信息,所述提醒信息用于提醒用户停止重复提交请求。
可选地,所述方法还包括:
若历史接收到的请求消息中不包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为首次收到的请求消息,将所述待处理的请求消息发送至处理接口。
本公开实施例的第二方面提供了一种重复提交请求的处理装置,该装置包括:
接收模块,用于接收待处理的请求消息;
匹配模块,用于将所述待处理的请求消息与历史接收到的请求消息进行匹配;
确定模块,用于若历史接收到的请求消息中包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为重复的请求消息,拦截并拒绝处理所述待处理的请求消息。
可选地,所述匹配模块包括:
计算单元,用于计算所述待处理的请求消息与历史接收到的请求消息的相似度;
第一确定单元,用于响应于所述相似度大于或等于预设阈值,则确定所述待处理的请求消息与所述历史接收到的请求消息匹配。
可选地,所述匹配模块包括:
提取单元,用于提取所述待处理的请求消息中包含的数据以及所述待处理的请求消息的标识信息;
第一匹配单元,用于将所述数据和所述标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配;
第二确定单元,用于若所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致,则确定所述历史接收到的请求消息和所述待处理的请求消息匹配。
可选地,所述匹配模块包括:
组合单元,用于将所述数据与所述标识信息按照预设格式进行组合,得到第一数据串;
加密单元,用于基于预设的加密算法对所述第一数据串进行加密处理,得到第二数据串;
第二匹配单元,用于将所述第二数据串与历史接收到的请求消息对应的第三数据串进行匹配,其中所述第三数据串是通过将所述历史接收到的请求消息中包含的数据和标识信息按照所述预设格式进行组合,并通过所述加密算法对组合后得到的数据进行加密得到的;
第三确定单元,用于若所述第二数据串和所述第三数据串一致,则确定所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致。
可选地,所述匹配模块具体用于:
将所述待处理的请求消息与预设的历史时间段内接收到的请求消息进行匹配。
可选地,所述装置还包括:
提醒模块,用于返回提醒信息,所述提醒信息用于提醒用户停止重复提交请求。
可选地,所述装置还包括:
发送模块,用于若历史接收到的请求消息中不包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为首次收到的请求消息,将所述待处理的请求消息发送至处理接口。
本公开实施例的第三方面提供了一种计算机设备,包括存储器和处理器,以及计算机程序,其中,存储器中存储有计算机程序,当计算机程序被处理器执行时,实现如上述第一方面的重复提交请求的处理方法。
本公开实施例的第四方面提供了一种计算机可读存储介质,存储介质中存储有计算机程序,当计算机程序被处理器执行时,实现如上述第一方面的重复提交请求的处理方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
在本公开实施例提供的重复提交请求的处理方法、装置、设备及存储介质中,通过将接收到的待处理的请求消息与历史接收到的请求消息进行匹配,在历史接收到的请求消息中包括与待处理的请求消息相匹配的请求消息时,确定该待处理的请求消息为重复的请求消息,拦截并拒绝处理该待处理的请求消息,能够在接收到的待处理的请求消息与历史请求消息中已存在的请求消息相同时,认为该待处理的请求消息是重复的请求消息,拦截该请求消息,不对该请求消息进行再次处理,从而避免对重复请求进行多次处理,进而减少多次处理重复请求产生的脏数据,减少后续可能存在的由脏数据带来的隐患,同时降低服务器的处理压力,提高处理速度,提升用户体验。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例提供的一种重复提交请求的处理方法的流程图;
图2是本公开实施例提供的一种匹配待处理的请求消息的方法的流程图;
图3是本公开实施例提供的另一种匹配待处理的请求消息的方法的流程图;
图4是本公开实施例提供的又一种匹配待处理的请求消息的方法的流程图;
图5是本公开实施例提供的一种重复提交请求的处理装置的结构示意图;
图6是本公开实施例提供的一种计算机设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
在核算混合采样的过程中,工作人员需要将采样管的编号与该采样管内的采样拭子对应的人员信息录入到系统中,在填写完毕相关信息后,点击上传按钮发送数据提交请求,服务器在接收到该请求后,会将请求传入业务逻辑进行处理,并在处理完成后通过返回提示信息或跳转页面的方式告知工作人员数据已成功提交。如果该返回信息未能及时发送给终端,工作人员就可能在短时间内重复点击上传按钮,造成对数据提交请求的重复提交,基于上述问题,本公开提供了一种重复提交请求的处理方法、装置、设备及存储介质。
图1是本公开实施例提供的一种重复提交请求的处理方法的流程图,该方法可以由一种重复提交请求的处理装置执行。如图1所示,本实施例提供的重复提交请求的处理方法包括如下步骤:
S101、接收待处理的请求消息。
本公开实施例中的请求消息可以理解为终端设备通过数据提交请求发送的信息,其中,请求消息可以包括请求时间、请求内容、请求标识等,在此不做限定。
本公开实施例中,重复提交请求的处理装置可以在接收到终端发送的待处理的数据提交请求后,从数据提交请求中提取请求消息,提取方法包括但不限于以下两种:
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以在接收到终端发送的待处理的数据提交请求后,从数据提交请求中提取请求里携带的统一资源定位符(Uniform Resource Locator,URL)、请求内容信息和请求标识信息,并将这些信息作为请求消息。
在本公开实施例的另一种示例性的实施方式中,重复提交请求的处理装置可以在从数据提交请求中提取到各项信息后,将信息按照预设方式组合,并将组合后的信息作为该数据提交请求的请求消息
S102、将所述待处理的请求消息与历史接收到的请求消息进行匹配。
本公开实施例中的历史接收到的请求消息可以理解为在接收到待处理的请求消息的时刻之前,从接收到的终端设备发送的数据提交请求中提取的信息,示例的,历史接收到的请求消息可以存在于缓存中,也可以被存储在其他数据库中,在此不做限定。
本公开实施例中,重复提交请求的处理装置可以在接收到待处理的请求消息后,将待处理的请求消息与历史接收到的各个请求消息分别进行匹配,确定历史接收到的各个请求消息中是否存在与待处理的请求消息相匹配的请求消息,匹配方法包括但不限于以下几种:
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以将待处理的请求消息中的各项参数分别与历史接收到的请求消息中的相应参数进行比较,并将各项参数均与待处理的请求消息相同的历史接收到的请求消息认为是相匹配的请求消息。
在本公开实施例的另一种示例性的实施方式中,重复提交请求的处理装置可以将待处理的请求消息整体与历史接收到的请求消息进行比较,并将与将待处理的请求消息整体相同的历史接收到的请求消息认为是相匹配的请求消息。
在本公开实施例的又一种示例性的实施方式中,在请求消息中包括请求时间时,重复提交请求的处理装置可以将待处理的请求消息中除请求时间以外的参数与历史接收到的请求消息的相应参数进行比较,如果待处理的请求消息中除请求时间以外的各项参数均与历史接收到的请求消息中的一条请求消息相同,则将待处理的请求消息的请求时间与该历史接收到的请求消息的请求时间进行做差处理,如果差值小于预设阈值,则认为该历史接收到的请求消息与待处理的请求消息匹配成功。
S103、若历史接收到的请求消息中包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为重复的请求消息,拦截并拒绝处理所述待处理的请求消息。
本公开实施例中,重复提交请求的处理装置可以在将待处理的请求消息与历史接收到的请求消息进行匹配后,如果在历史接收到的请求消息中存在请求消息与待处理的请求消息匹配成功,则可以认为待处理的请求消息所属的数据提交请求为重复请求,待处理的请求消息为重复的请求消息,针对该请求消息已经执行过一次处理流程,因此拦截该待处理的请求消息,并且拒绝对该待处理的请求消息再次进行处理,具体方法包括但不限于以下几种:
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以在确定待处理的请求消息为重复的请求消息后,拦截并丢弃该重复的请求消息,使得该重复的请求消息不会进入下一阶段的处理流程。
在本公开的另一种示例性的实施方式中,重复提交请求的处理装置可以在确定待处理的请求消息为重复的请求消息后,拦截该待处理的请求消息,并且返回一个用于表示该待处理的请求消息为重复的请求消息的结果,从而结束处理流程。
本公开实施例通过接收待处理的请求消息,将待处理的请求消息与历史接收到的请求消息进行匹配,若历史接收到的请求消息中包括与待处理的请求消息相匹配的请求消息,则确定待处理的请求消息为重复的请求消息,拦截并拒绝处理待处理的请求消息,能够在接收到的待处理的请求消息与历史请求消息中已存在的请求消息匹配时,认为该待处理的请求消息是重复的请求消息,因此不对该请求消息进行处理,从而避免对重复请求进行多次处理,进而减少多次处理重复请求产生的脏数据,减少后续可能存在的由脏数据带来的隐患,同时降低服务器的处理压力,提高处理速度,提升用户体验。
图2是本公开实施例提供的一种匹配待处理的请求消息的方法的流程图,如图2所示,在上述实施例的基础上,可以通过如下方法匹配待处理的请求消息。
S201、计算所述待处理的请求消息与历史接收到的请求消息的相似度。
本公开实施例中的相似度可以理解为综合评定两个事物之间相近程度的一种度量,两个事物越接近,它们的相似度就越大。
本公开实施例中,重复提交请求的处理装置可以基于预设的相似度计算方法确定待处理的请求消息与各个历史接收到的请求消息之间的相似度。
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以分别提取待处理的请求消息与各个历史接收到的请求消息的特征,并基于预设的相似度计算方法确定待处理的请求消息的特征与各个历史接收到的请求消息的特征之间的相似度。
S202、响应于所述相似度大于或等于预设阈值,则确定所述待处理的请求消息与所述历史接收到的请求消息匹配。
本公开实施例中的预设阈值可以理解为预先设定的认为待处理的请求消息与历史接收到的请求消息相匹配的最小相似度,预设阈值的具体数值可以根据实际需要进行设定。
本公开实施例中,重复提交请求的处理装置可以在计算得到待处理的请求消息与各个历史接收到的请求消息的相似度之后,将每个相似度分别与预设阈值进行比较,如果存在大于预设阈值的相似度,则认为历史接收到的请求消息中存在与待处理的请求消息相匹配的请求消息,可以确定待处理的请求消息与历史接收到的请求消息匹配。
本公开实施例通过计算待处理的请求消息与历史接收到的请求消息的相似度,响应于相似度大于或等于预设阈值,则确定待处理的请求消息与历史接收到的请求消息匹配,能够通过相似度直观的表示出待处理的请求消息与历史接收到的请求消息的相似程度,进而确定待处理的请求消息是否是重复的请求消息,同时缩短了处理时间。
图3是本公开实施例提供的另一种匹配待处理的请求消息的方法的流程图,如图3所示,在上述实施例的基础上,可以通过如下方法匹配待处理的请求消息。
S301、提取所述待处理的请求消息中包含的数据以及所述待处理的请求消息的标识信息。
本公开实施例中的数据可以理解为待处理的请求消息对应的数据提交请求中作为提交对象的数据,示例的,数据可以包括采样管编号,采样拭子对应的人员信息等,在此不做限定。
本公开实施例中的标识信息可以理解为用于表示身份的信息,请求消息的标识信息可以理解为用于表示请求消息的身份,将请求消息与其他请求消息进行区分的信息,其中,短时间内提交的多条数据提交请求对应的请求消息中包含的标识信息相同。
本公开实施例中,重复提交请求的处理装置可以在接收到待处理的请求消息之后,从中提取待处理的请求消息包含的数据以及该待处理的请求消息携带的标识信息,提取方式包括但不限于以下几种:
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以直接从待处理的请求消息中查找数据和标识信息,并将查找到的数据和标识信息提取出来。
在本公开实施例的另一种示例性的实施方式中,重复提交请求的处理装置也可以先将待处理的请求消息中包含的URL参数和请求体参数提取出来,再从URL参数中提取数据,从请求体参数中提取标识信息,从而获取到待处理的请求消息中包含的数据和标识信息。
S302、将所述数据和所述标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配。
本公开实施例中,重复提交请求的处理装置可以在获取到待处理的请求消息中包含的数据以及待处理的请求消息的标识信息后,通过同样的方法获取历史接收到的请求消息中包含的数据和标识信息,并将待处理的请求消息中包含的数据和标识信息与所有历史接收到的请求消息中的数据和标识信息进行匹配处理,匹配方式包括但不限于以下几种:
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以先将待处理的请求消息中包含的标识信息与各个历史接收到的请求消息中包含的标识信息分别进行匹配,再对匹配成功的历史接收到的请求消息中包含的数据与待处理的请求消息包含的数据进行二次匹配。
在本公开实施例的另一种示例性的实施方式中,重复提交请求的处理装置可以将待处理的请求消息中包含的数据和标识信息进行组合,并对所有历史接收到的请求消息中包含的数据和标识信息进行相同的处理,对组合后的信息进行匹配。
S303、若所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致,则确定所述历史接收到的请求消息和所述待处理的请求消息匹配。
本公开实施例中,重复提交请求的处理装置可以在同一条历史接收到的请求消息中包含的数据和标识信息都分别与待处理的请求消息中包含的数据和标识信息相同时,认为该历史接收到的请求消息和待处理的请求消息相匹配。
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以对数据和标识信息分别进行两次匹配,如果存在历史接收到的数据提交请求中包含的标识信息与待处理的请求消息中包含的标识信息相同,则认为首次匹配成功,并获取该匹配成功的历史接收到的请求消息中包含的数据,与待处理的请求消息包含的数据进行二次匹配,如果数据也相同,则认为二次匹配成功,该历史接收到的请求消息中包含的数据和标识信息与待处理的请求消息一致,历史接收到的请求消息和待处理的请求消息相匹配。
在本公开实施例的另一种示例性的实施方式中,重复提交请求的处理装置可以在对数据和标识信息组合后的信息进行匹配时,如果存在历史接收到的请求消息对应的组合后的信息与待处理的请求消息对应的组合后的信息一致,则认为历史接收到的请求消息和待处理的请求消息匹配。
本公开实施例通过提取待处理的请求消息中包含的数据以及待处理的请求消息的标识信息,将数据和标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配,若历史接收到的请求消息中包含的数据和标识信息与待处理的请求消息中包含的数据和标识信息一致,则确定历史接收到的请求消息和待处理的请求消息匹配,能够从待处理的请求消息中提取具有代表性的数据和标识信息,并与历史接收到的请求消息进行匹配,从而在数据与标识信息都与同一条历史接收到的请求消息相同时,认为待处理的请求消息是重复的请求消息,从而在内容维度和时间维度上对待处理的请求消息是否重复进行判断,在避免多次处理重复请求的同时,减少将非重复请求判断为重复请求的误判率,同时减少数据处理量,加快处理速度。
图4是本公开实施例提供的又一种匹配待处理的请求消息的方法的流程图。如图4所示,在上述实施例的基础上,可以通过如下方法匹配待处理的请求消息。
S401、将所述数据与所述标识信息按照预设格式进行组合,得到第一数据串。
本公开实施例中的预设格式可以理解为预先设定的将数据和标识信息进行组合时所依照的形式或规则。
本公开实施例中的第一数据串可以理解为将数据和标识信息进行组合后得到的以串的形式表示的数据。
本公开实施例中,重复提交请求的处理装置可以将从待处理的请求消息中提取到的数据和标识信息按照预设格式进行组合,得到第一数据串。
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以通过预先设定的排序算法,对从待处理的请求消息中提取到的数据和标识信息进行排序,将排序后的信息进行组合得到第一数据串,其中,排序算法可以从数据和标识信息中的各项参数数值中选取相同位置的元素作为基准元素,并针对该基准元素按照设定的顺序进行排序。
S402、基于预设的加密算法对所述第一数据串进行加密处理,得到第二数据串。
本公开实施例中的加密算法可以为任意的能够对第一数据串进行加密的算法,比如消息摘要算法(Message Digest Algorithm 5,MD5)、安全散列算法(Secure HashAlgorithm,SHA)等,在此不做限定。
本公开实施例中的第二数据串可以为对第一数据串进行加密处理后得到的以串的形式表示的加密结果。
本公开实施例中,重复提交请求的处理装置可以在获取到第一数据串后,通过预先设定的加密算法对第一数据串进行加密处理,得到加密的第二数据串。
S403、将所述第二数据串与历史接收到的请求消息对应的第三数据串进行匹配,其中所述第三数据串是通过将所述历史接收到的请求消息中包含的数据和标识信息按照所述预设格式进行组合,并通过所述加密算法对组合后得到的数据进行加密得到的。
本公开实施例中的第三数据串可以理解为通过与待处理的请求消息相同的处理方式对历史接收到的请求消息进行处理后,得到的以串的形式表示的数据,其中,从历史请求消息中提取数据和标识信息的方法、对提取到的数据和标识信息按照预设格式进行组合的方法以及对组合后的信息进行加密的方法均与待处理的请求消息相同。
本公开实施例中,重复提交请求的处理装置可以在获得历史接收到的请求消息对应的第三数据串后,将第二数据串与第三数据串进行匹配。
在本公开实施例的一种示例性的实施方式中,重复提交请求的处理装置可以在远程字典服务(Remote Dictionary Server,redis)数据库中实现第二数据串与第三数据串的匹配。具体地,redis数据库中存储有历史接收到的请求消息对应的第三数据串,在对第二数据串与第三数据串进行匹配时,可以通过查找自增命令incr在redis数据库中对第二数据串进行查找,如果redis数据库中存储有与第二数据串相同的第三数据串,则会返回一个自增后的结果,如果redis数据库中未存储有与第二数据串相同的第三数据串,则会返回零值,根据返回的结果判断是否存在与第二数据串相匹配的第三数据串。
S404、若所述第二数据串和所述第三数据串一致,则确定所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致。
本公开实施例中,重复提交请求的处理装置可以在确定第二数据串与第三数据串一致之后,认为第二数据串对应的待处理的请求消息中包括的数据和标识信息与第三数据串对应的历史接收到的请求消息中包括的数据和标识信息一致。
本公开实施例通过将数据与标识信息按照预设格式进行组合,得到第一数据串,基于预设的加密算法对第一数据串进行加密处理,得到第二数据串,将第二数据串与历史接收到的请求消息对应的第三数据串进行匹配,其中第三数据串是通过将历史接收到的请求消息中包含的数据和标识信息按照预设格式进行组合,并通过加密算法对组合后得到的数据进行加密得到的,若第二数据串和第三数据串一致,则确定历史接收到的请求消息中包含的数据和标识信息与待处理的请求消息中包含的数据和标识信息一致,能够在对历史接收到的请求消息进行存储以及对待处理的请求消息进行匹配时,对经过加密处理后得到的加密数据进行处理,提高数据的安全性,并且将加密数据与其他加密数据进行匹配,只需要进行一次匹配就能得到处理结果,减少匹配的计算量,提高处理速度。
在本公开一些实施例中,重复提交请求的处理装置可以将所述待处理的请求消息与预设的历史时间段内接收到的请求消息进行匹配。
本公开一些实施例中,重复提交请求的处理装置可以在将待处理的请求消息与历史接收到的请求消息进行匹配时,将接收时间在预设的历史时间段内的请求消息筛选出来,与待处理的请求消息进行匹配。
在本公开一些实施例的一种示例性的实施方式中,重复提交请求的处理装置可以将接收时间不在历史时间段内的历史接收到的请求消息从存储的请求消息中删除,从而在需要对待处理的请求消息进行匹配时,所有待匹配的历史接收到的请求消息均为在历史时间段内接收到的请求消息。其中,历史时间段可以根据需要进行设定,示例的,历史时间段可以是当天,也可以是接收到待处理的请求消息的时刻之前的十分钟,在此不做限定。
本公开一些实施例通过将待处理的请求消息与预设的历史时间段内接收到的请求消息进行匹配,能够减少需要与待处理的请求消息进行匹配的历史接收到的请求消息的数量,进一步提高处理速度。
在本公开一些实施例中,重复提交请求的处理装置可以在确定所述待处理的请求消息为重复的请求消息之后,返回提醒信息,所述提醒信息用于提醒用户停止重复提交请求。
本公开一些实施例中,重复提交请求的处理装置可以在确定待处理的请求消息为重复的请求消息之后,向发送该待处理的请求消息对应的数据提交请求的终端返回一条提醒信息,通过该提醒信息来提醒用户无需再次点击提交按钮发送重复的提交请求。
本公开一些实施例通过在确定待处理的请求消息为重复的请求消息之后,返回用于提醒用户停止重复提交请求的提醒信息,能够在用户重复发送数据提交请求时,提醒用户在不再发送重复的请求,降低服务器的处理压力。
在本公开一些实施例中,重复提交请求的处理装置可以在历史接收到的请求消息中不包括与所述待处理的请求消息相匹配的请求消息时,确定所述待处理的请求消息为首次收到的请求消息,将所述待处理的请求消息发送至处理接口。
本公开一些实施例中的处理接口可以理解为用于对接收到的待处理的请求消息进行处理的业务接口。
在本公开一些实施例中,重复提交请求的处理装置可以在将待处理的请求消息与历史接收到的请求消息进行匹配后,如果历史接收到的请求消息都不能与待处理的请求消息成功匹配,则可以认为待处理的请求消息所属的数据提交请求为首次接收到的请求,待处理的请求消息为首次收到的请求消息,因此需要将该待处理的请求消息发送到处理接口进行处理,其中,处理接口可以是设置的默认处理接口,也可以是根据请求消息中包含的接口信息确定的处理接口,在此不做限定。
本公开一些实施例通过在历史接收到的请求消息中不包括与待处理的请求消息相匹配的请求消息时,确定待处理的请求消息为首次收到的请求消息,将待处理的请求消息发送至处理接口,能够在确定接收到的请求消息为首次接收到的请求消息时,通过处理接口对请求消息进行后续处理,保证业务逻辑的正常进行。
图5是本公开实施例提供的一种重复提交请求的处理装置的结构示意图。如图5所示,该重复提交请求的处理装置500包括:接收模块510,匹配模块520,确定模块530,其中,接收模块510,用于接收待处理的请求消息;匹配模块520,用于将所述待处理的请求消息与历史接收到的请求消息进行匹配;确定模块530,用于若历史接收到的请求消息中包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为重复的请求消息,拦截并拒绝处理所述待处理的请求消息。
可选地,所述匹配模块520,包括:计算单元,用于计算所述待处理的请求消息与历史接收到的请求消息的相似度;第一确定单元,用于响应于所述相似度大于或等于预设阈值,则确定所述待处理的请求消息与所述历史接收到的请求消息匹配。
可选地,所述匹配模块520,包括:提取单元,用于提取所述待处理的请求消息中包含的数据以及所述待处理的请求消息的标识信息;第一匹配单元,用于将所述数据和所述标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配;第二确定单元,用于若所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致,则确定所述历史接收到的请求消息和所述待处理的请求消息匹配。
可选地,所述匹配模块520,包括:组合单元,用于将所述数据与所述标识信息按照预设格式进行组合,得到第一数据串;加密单元,用于基于预设的加密算法对所述第一数据串进行加密处理,得到第二数据串;第二匹配单元,用于将所述第二数据串与历史接收到的请求消息对应的第三数据串进行匹配,其中所述第三数据串是通过将所述历史接收到的请求消息中包含的数据和标识信息按照所述预设格式进行组合,并通过所述加密算法对组合后得到的数据进行加密得到的;第三确定单元,用于若所述第二数据串和所述第三数据串一致,则确定所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致。
可选地,所述匹配模块520具体用于:将所述待处理的请求消息与预设的历史时间段内接收到的请求消息进行匹配;
可选地,所述重复提交请求的处理装置500还包括:提醒模块,用于返回提醒信息,所述提醒信息用于提醒用户停止重复提交请求。
可选地,所述重复提交请求的处理装置500还包括:发送模块,用于若历史接收到的请求消息中不包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为首次收到的请求消息,将所述待处理的请求消息发送至处理接口。
本实施例提供的重复提交请求的处理装置能够执行上述任一实施例所述的方法,其执行方式和有益效果类似,在这里不再赘述。
图6是本公开实施例提供的一种计算机设备的结构示意图。
如图6所示,该计算机设备可以包括处理器610以及存储有计算机程序指令的存储器620。
具体地,上述处理器610可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
存储器620可以包括用于信息或指令的大容量存储器。举例来说而非限制,存储器620可以包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个及其以上这些的组合。在合适的情况下,存储器620可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器620可在综合网关设备的内部或外部。在特定实施例中,存储器620是非易失性固态存储器。在特定实施例中,存储器620包括只读存储器(Read-Only Memory,ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(Programmable ROM,PROM)、可擦除PROM(Electrical Programmable ROM,EPROM)、电可擦除PROM(Electrically ErasableProgrammable ROM,EEPROM)、电可改写ROM(Electrically Alterable ROM,EAROM)或闪存,或者两个或及其以上这些的组合。
处理器610通过读取并执行存储器620中存储的计算机程序指令,以执行本公开实施例所提供的重复提交请求的处理方法的步骤。
在一个示例中,该计算机设备还可包括收发器630和总线640。其中,如图6所示,处理器610、存储器620和收发器630通过总线640连接并完成相互间的通信。
总线640包括硬件、软件或两者。举例来说而非限制,总线可包括加速图形端口(Accelerated Graphics Port,AGP)或其他图形总线、增强工业标准架构(ExtendedIndustry Standard Architecture,EISA)总线、前端总线(Front Side BUS,FSB)、超传输(Hyper Transport,HT)互连、工业标准架构(Industrial Standard Architecture,ISA)总线、无限带宽互连、低引脚数(Low Pin Count,LPC)总线、存储器总线、微信道架构(MicroChannel Architecture,MCA)总线、外围控件互连(Peripheral Component Interconnect,PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(Serial Advanced TechnologyAttachment,SATA)总线、视频电子标准协会局部(Video Electronics StandardsAssociation Local Bus,VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线640可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
本公开实施例还提供了一种计算机可读存储介质,该存储介质可以存储有计算机程序,当计算机程序被处理器执行时,使得处理器实现本公开实施例所提供的重复提交请求的处理方法。
上述的存储介质可以例如包括计算机程序指令的存储器620,上述指令可由重复提交请求的处理设备的处理器610执行以完成本公开实施例所提供的重复提交请求的处理方法。可选的,存储介质可以是非临时性计算机可读存储介质,例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(Random Access Memory,RAM)、光盘只读存储器(Compact Disc ROM,CD-ROM)、磁带、软盘和光数据存储设备等。上述计算机程序可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种重复提交请求的处理方法,其特征在于,包括:
接收待处理的请求消息;
将所述待处理的请求消息与历史接收到的请求消息进行匹配;
若历史接收到的请求消息中包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为重复的请求消息,拦截并拒绝处理所述待处理的请求消息。
2.根据权利要求1所述的方法,其特征在于,所述将所述待处理的请求消息与历史接收到的请求消息进行匹配,包括:
计算所述待处理的请求消息与历史接收到的请求消息的相似度;
响应于所述相似度大于或等于预设阈值,则确定所述待处理的请求消息与所述历史接收到的请求消息匹配。
3.根据权利要求1所述的方法,其特征在于,所述将所述待处理的请求消息与历史接收到的请求消息进行匹配,包括:
提取所述待处理的请求消息中包含的数据以及所述待处理的请求消息的标识信息;
将所述数据和所述标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配;
若所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致,则确定所述历史接收到的请求消息和所述待处理的请求消息匹配。
4.根据权利要求3所述的方法,其特征在于,所述将所述数据和所述标识信息分别与历史接收到的请求消息中包含的数据和标识信息进行匹配,包括:
将所述数据与所述标识信息按照预设格式进行组合,得到第一数据串;
基于预设的加密算法对所述第一数据串进行加密处理,得到第二数据串;
将所述第二数据串与历史接收到的请求消息对应的第三数据串进行匹配,其中所述第三数据串是通过将所述历史接收到的请求消息中包含的数据和标识信息按照所述预设格式进行组合,并通过所述加密算法对组合后得到的数据进行加密得到的;
若所述第二数据串和所述第三数据串一致,则确定所述历史接收到的请求消息中包含的数据和标识信息与所述待处理的请求消息中包含的数据和标识信息一致。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述将所述待处理的请求消息与历史接收到的请求消息进行匹配,包括:
将所述待处理的请求消息与预设的历史时间段内接收到的请求消息进行匹配。
6.根据权利要求1-4中任一项所述的方法,其特征在于,所述确定所述待处理的请求消息为重复的请求消息之后,所述方法还包括:
返回提醒信息,所述提醒信息用于提醒用户停止重复提交请求。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若历史接收到的请求消息中不包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为首次收到的请求消息,将所述待处理的请求消息发送至处理接口。
8.一种重复提交请求的处理装置,其特征在于,包括:
接收模块,用于接收待处理的请求消息;
匹配模块,用于将所述待处理的请求消息与历史接收到的请求消息进行匹配;
确定模块,用于若历史接收到的请求消息中包括与所述待处理的请求消息相匹配的请求消息,则确定所述待处理的请求消息为重复的请求消息,拦截并拒绝处理所述待处理的请求消息。
9.一种计算机设备,其特征在于,包括:存储器;处理器;以及计算机程序;其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,当所述计算机程序被处理器执行时,实现如权利要求1-7中任一项所述的重复提交请求的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160562.3A CN115499399A (zh) | 2022-09-22 | 2022-09-22 | 一种重复提交请求的处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211160562.3A CN115499399A (zh) | 2022-09-22 | 2022-09-22 | 一种重复提交请求的处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115499399A true CN115499399A (zh) | 2022-12-20 |
Family
ID=84470012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211160562.3A Pending CN115499399A (zh) | 2022-09-22 | 2022-09-22 | 一种重复提交请求的处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115499399A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109359131A (zh) * | 2018-09-30 | 2019-02-19 | 深圳壹账通智能科技有限公司 | 基于贷款系统的请求处理方法、装置和计算机设备 |
CN110442466A (zh) * | 2019-06-14 | 2019-11-12 | 平安科技(深圳)有限公司 | 防止请求重复访问方法、装置、计算机设备及存储介质 |
CN113703991A (zh) * | 2021-07-26 | 2021-11-26 | 青岛海尔科技有限公司 | 一种重复消息处理方法及系统 |
-
2022
- 2022-09-22 CN CN202211160562.3A patent/CN115499399A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109359131A (zh) * | 2018-09-30 | 2019-02-19 | 深圳壹账通智能科技有限公司 | 基于贷款系统的请求处理方法、装置和计算机设备 |
CN110442466A (zh) * | 2019-06-14 | 2019-11-12 | 平安科技(深圳)有限公司 | 防止请求重复访问方法、装置、计算机设备及存储介质 |
CN113703991A (zh) * | 2021-07-26 | 2021-11-26 | 青岛海尔科技有限公司 | 一种重复消息处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111352907A (zh) | 流水文件解析方法、装置、计算机设备和存储介质 | |
CN104980402B (zh) | 一种识别恶意操作的方法及装置 | |
US20190114314A1 (en) | Method and system for partial application data collection | |
US11893829B2 (en) | Method for deploying a face sample library and method and apparatus for business processing based on face recognition | |
CN110019377B (zh) | 动态脱敏方法、装置、设备及介质 | |
CN111767543B (zh) | 重放攻击漏洞确定方法、装置、设备及可读存储介质 | |
CN114004608A (zh) | 一种基于区块链的交易费用结算方法、装置及电子设备 | |
CN115499399A (zh) | 一种重复提交请求的处理方法、装置、设备及存储介质 | |
CN110135326B (zh) | 一种身份认证方法、电子设备及计算机可读存储介质 | |
CN115905145A (zh) | 文件处理方法、装置、设备及计算机存储介质 | |
CN109299948B (zh) | 一种红包发送方法、装置、可穿戴设备及存储介质 | |
CN112182520A (zh) | 非法账号的识别方法、装置、可读介质及电子设备 | |
CN113472686B (zh) | 信息识别方法、装置、设备及存储介质 | |
CN114066317A (zh) | 交易数据检测方法、装置、计算机设备及存储介质 | |
CN116700989A (zh) | 数据传输方法、装置、设备及存储介质 | |
CN114492409B (zh) | 文件内容的评价方法、装置、电子设备及程序产品 | |
CN111832851B (zh) | 一种检测方法及装置 | |
CN116633632A (zh) | 一种基于emoji的口令生成方法、装置、设备及存储介质 | |
CN112488562B (zh) | 一种业务实现方法及装置 | |
CN117082021B (zh) | 邮件干预方法、装置、设备及介质 | |
CN111767544B (zh) | 多频重放攻击漏洞确定方法、装置、设备及可读存储介质 | |
JP2019020979A (ja) | 情報処理装置および信用度算出方法 | |
CN115563595A (zh) | 一种动态验证系统、方法、装置、电子设备及存储介质 | |
WO2015037263A1 (ja) | デジタル情報分析システム、デジタル情報分析方法およびデジタル情報分析プログラム | |
CN115048601A (zh) | 一种内容发布方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |