CN106372174A - 防止表单重复提交的方法和装置 - Google Patents
防止表单重复提交的方法和装置 Download PDFInfo
- Publication number
- CN106372174A CN106372174A CN201610782294.7A CN201610782294A CN106372174A CN 106372174 A CN106372174 A CN 106372174A CN 201610782294 A CN201610782294 A CN 201610782294A CN 106372174 A CN106372174 A CN 106372174A
- Authority
- CN
- China
- Prior art keywords
- request
- flag bit
- value
- list
- submission
- 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
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提出一种防止表单重复提交的方法和装置,该防止表单重复提交的方法包括接收客户端发送的用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位;判断标志位的值是否为预设次数;在标志位的值为预设次数时,判定未发生重复提交表单事件;生成请求的响应,并将响应发送至客户端。通过本发明能够有效防止表单重复提交。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种防止表单重复提交的方法和装置。
背景技术
用户在访问互联网的过程中,会有提交表单的需求,例如,用户在某互联网站的注册页面填写注册信息,点击提交按钮,会触发客户端的浏览器向服务器提交注册表单,以使服务器对注册表单进行业务处理。在用户触发提交表单,浏览器向服务器提交表单的过程中,由于用户可能会误触发而多次点击提交按钮,或浏览器页面多次刷新表单提交页面等,会发生重复提交表单事件。相关技术中,通过在客户端嵌入JavaScript代码防止表单重复提交,或者,通过在服务器同步令牌Token防止表单重复提交。
第一种方式下,由于依赖于客户端,嵌入的JavaScript代码易被修改,存在诸多不确定性因素,例如,恶意修改、提交等,另外,嵌入JavaScript代码不能避免对浏览器的刷新、回退等操作所导致的表单重复提交事件,而第二种方式下,当分布式网络环境中存在多个服务器节点时,并不能够避免表单重复提交事件。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种防止表单重复提交的方法,能够有效防止表单重复提交。
本发明的另一个目的在于提出一种防止表单重复提交的方法。
本发明的另一个目的在于提出一种防止表单重复提交的装置。
本发明的另一个目的在于提出一种防止表单重复提交的装置。
为达到上述目的,本发明第一方面实施例提出的防止表单重复提交的方法,包括:接收客户端发送的用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;判断所述标志位的值是否为预设次数;在所述标志位的值为所述预设次数时,判定未发生重复提交表单事件;生成所述请求的响应,并将所述响应发送至所述客户端。
在本发明的一个实施例中,所述判断所述标志位的值是否为预设次数之后,还包括:
在所述标志位的值不为所述预设次数时,判定发生所述重复提交表单事件;
生成表单重复提交的提示信息,并将所述提示信息发送至所述客户端,以使所述客户端对用户进行提示。
在本发明的一个实施例中,还包括:
判断所述标志位的值是否大于预设阈值;
在所述标志位的值大于所述预设阈值时,丢弃所述请求。
在本发明的一个实施例中,所述预设次数为1。
本发明第一方面实施例提出的防止表单重复提交的方法,通过在客户端发送的用于提交表单的请求中的标志位的值为预设次数时,判定未发生重复提交表单事件,生成请求的响应,并将响应发送至客户端,能够有效防止表单重复提交。
为达到上述目的,本发明第二方面实施例提出的防止表单重复提交的方法,包括:在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值;将所述计数值作为标志位的值,并根据所述指令和所述标志位生成用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;将所述请求发送至所述服务器,以使所述服务器根据所述标志位的值判定是否发生重复提交表单事件。
在本发明的一个实施例中,还包括:
接收所述服务器发送的所述请求的响应,并根据所述请求的响应将所述计数值重置为0。
在本发明的一个实施例中,还包括:
接收所述服务器发送的表单重复提交的提示信息;
将所述提示信息显示给用户,以对所述用户进行提示。
本发明第二方面实施例提出的防止表单重复提交的方法,通过在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值,将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件,能够有效防止表单重复提交。
为达到上述目的,本发明第三方面实施例提出的防止表单重复提交的装置,包括:请求接收模块,用于接收客户端发送的用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;第一判断模块,用于判断所述标志位的值是否为预设次数;第一判定模块,用于在所述标志位的值为所述预设次数时,判定未发生重复提交表单事件;响应生成模块,用于生成所述请求的响应,并将所述响应发送至所述客户端。
在本发明的一个实施例中,还包括:
第二判定模块,用于在所述标志位的值不为所述预设次数时,判定发生所述重复提交表单事件;
提示信息生成模块,用于生成表单重复提交的提示信息,并将所述提示信息发送至所述客户端,以使所述客户端对用户进行提示。
在本发明的一个实施例中,还包括:
第二判断模块,用于判断所述标志位的值是否大于预设阈值;
丢弃模块,用于在所述标志位的值大于所述预设阈值时,丢弃所述请求。
在本发明的一个实施例中,所述预设次数为1。
本发明第三方面实施例提出的防止表单重复提交的装置,通过在客户端发送的用于提交表单的请求中的标志位的值为预设次数时,判定未发生重复提交表单事件,生成请求的响应,并将响应发送至客户端,能够有效防止表单重复提交。
为达到上述目的,本发明第四方面实施例提出的防止表单重复提交的装置,包括:计数模块,用于在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值;请求生成模块,用于将所述计数值作为标志位的值,并根据所述指令和所述标志位生成用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;请求发送模块,用于将所述请求发送至所述服务器,以使所述服务器根据所述标志位的值判定是否发生重复提交表单事件。
在本发明的一个实施例中,还包括:
响应接收模块,用于接收所述服务器发送的所述请求的响应,并根据所述请求的响应将所述计数值重置为0。
在本发明的一个实施例中,还包括:
提示信息接收模块,用于接收所述服务器发送的表单重复提交的提示信息;
显示模块,用于将所述提示信息显示给用户,以对所述用户进行提示。
本发明第四方面实施例提出的防止表单重复提交的装置,通过在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值,将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件,能够有效防止表单重复提交。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明一实施例提出的防止表单重复提交的方法的流程示意图;
图2是本发明另一实施例提出的防止表单重复提交的方法的流程示意图;
图3是本发明另一实施例提出的防止表单重复提交的方法的流程示意图;
图4是本发明另一实施例提出的防止表单重复提交的方法的流程示意图;
图5是本发明另一实施例提出的防止表单重复提交的方法的流程示意图;
图6是本发明一实施例提出的防止表单重复提交的装置的结构示意图;
图7是本发明另一实施例提出的防止表单重复提交的装置的结构示意图;
图8是本发明另一实施例提出的防止表单重复提交的装置的结构示意图;
图9是本发明另一实施例提出的防止表单重复提交的装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本发明一实施例提出的防止表单重复提交的方法的流程示意图。
本实施例的执行主体可以为服务器。
参见图1,该方法包括:
S11:接收客户端发送的用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位。
用户在访问互联网的过程中,会有提交表单的需求,例如,用户在某互联网站的注册页面填写注册信息,点击提交按钮,会触发客户端的浏览器向服务器提交注册表单,以使服务器对注册表单进行业务处理。
在用户触发提交表单,浏览器向服务器提交表单的过程中,由于用户可能会误触发而多次点击提交按钮,或浏览器页面多次刷新表单提交页面等,会发生重复提交表单事件。
在本发明的实施例中,用于提交表单的请求可以是客户端的浏览器生成的,该请求中包括用于标识提交次数的标志位,其中,标志位的值标记提交次数,例如,当标志位的值为1时,可以标记表单提交一次,而标志位的值为2时,标记表单提交两次,以此类推,对此不作限制。
S12:判断标志位的值是否为预设次数。
其中,服务器在接收到客户端发送的用于提交表单的请求后,可以解析该请求中所包含的标志位,读取该标志位的值,根据标志位的值判断是否发生重复提交表单事件。
其中,预设次数可以为预先设置的。
可选地,预设次数可以为1,对此不作限制。
在本发明的实施例中,可以通过判断标志位的值是否为1,来判定是否发生重复提交表单事件。
S13:在标志位的值为预设次数时,判定未发生重复提交表单事件。
在本发明的实施例中,可以将预设次数设置为1,当标志位的值为1时,可以标记表单提交一次,而后,在标志位的值为1时,判定未发生重复提交表单事件,而在标志位的值不为1时,判定发生重复提交表单事件。
相关技术中,通过在客户端嵌入JavaScript代码防止表单重复提交,或者,通过在服务器同步令牌Token防止表单重复提交,第一种方式下,由于依赖于客户端,嵌入的JavaScript代码易被修改,存在诸多不确定性因素,例如,恶意修改、提交等,另外,嵌入JavaScript代码不能避免对浏览器的刷新、回退等操作所导致的表单重复提交事件,而第二种方式下,当分布式网络环境中存在多个服务器节点时,并不能够避免表单重复提交事件。
而本发明的实施例中,通过在客户端发送的用于提交表单的请求中设置标志位,在用户在客户端的浏览器侧每次触发提交表单时,采用标志位标记表单提交次数,不依赖于客户端,并且不依赖于服务器同步令牌Token,可靠性高,易于实现,有效避免表单重复提交事件。
S14:生成请求的响应,并将响应发送至客户端。
可选地,在服务器判定未发生表单重复提交事件之后,可以执行该请求,生成该请求的响应,并将响应发送至客户端,以使客户端可以执行后续步骤。
本实施例中,通过在客户端发送的用于提交表单的请求中的标志位的值为预设次数时,判定未发生重复提交表单事件,生成请求的响应,并将响应发送至客户端,能够有效防止表单重复提交。
图2是本发明另一实施例提出的防止表单重复提交的方法的流程示意图。
本实施例的执行主体可以为服务器。
参见图2,该方法包括:
S21:接收客户端发送的用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位。
S22:判断标志位的值是否为预设次数,若是,执行S23,否则,执行S25。
S23:判定未发生重复提交表单事件。
S24:生成请求的响应,并将响应发送至客户端。
S21-S24步骤的说明可以参见上述实施例,在此不再赘述。
S25:判断标志位的值是否大于预设阈值,若是,执行S26,否则,执行S27。
其中,预设阈值为预先设定的,预设阈值用于判定是否发生恶意提交事件。预设阈值可以例如为4次。
例如,服务器在判断客户端发送的用于提交表单的请求中标志位的值为7次,大于预设阈值4次时,可以判定该请求为恶意提交请求。
在本发明的实施例中,通过设置预设阈值,可以有效识别出恶意提交请求,且根据请求中标志位的值来判定是否发生恶意提交事件,不依赖于客户端,并且不依赖于服务器同步令牌Token,可靠性高,易于实现,有效避免表单恶意提交事件。
S26:丢弃请求。
在本发明的实施例中,在判定客户端发送的用于提交表单的请求为恶意提交事件时,可以不对请求进行处理,直接丢弃该请求,能够有效节省服务器生成响应的资源消耗,提升用户体验。
S27:生成表单重复提交的提示信息,并将提示信息发送至客户端,以使客户端对用户进行提示。
在本发明的实施例中,在判定客户端发送的用于提交表单的请求为表单重复提交事件时,可以生成表单重复提交的提示信息,并将提示信息发送至客户端,以使客户端对用户进行提示,避免用户再次触发表单提交,提升用户体验。
本实施例中,通过在客户端发送的用于提交表单的请求中的标志位的值为预设次数时,判定未发生重复提交表单事件,生成请求的响应,并将响应发送至客户端,能够有效防止表单重复提交。通过设置预设阈值,可以有效识别出恶意提交请求,且根据请求中标志位的值来判定是否发生恶意提交事件,不依赖于客户端,并且不依赖于服务器同步令牌Token,可靠性高,易于实现,有效避免表单恶意提交事件。在判定客户端发送的用于提交表单的请求为恶意提交事件时,可以不对请求进行处理,直接丢弃该请求,能够有效节省服务器生成响应的资源消耗,提升用户体验。在判定客户端发送的用于提交表单的请求为表单重复提交事件时,可以生成表单重复提交的提示信息,并将提示信息发送至客户端,以使客户端对用户进行提示,避免用户再次触发表单提交,提升用户体验。
图3是本发明另一实施例提出的防止表单重复提交的方法的流程示意图。
本实施例的执行主体可以为客户端。
参见图3,该方法包括:
S31:在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值。
其中,用于触发表单提交的指令可以为外部指令,外部指令例如为用户触发的指令,或者,也可以由提交表单的前置操作步骤所触发的指令,在此不作限制。
可以在每次接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值,例如,第一次接收到用于触发表单提交的指令时,计数值为1,第二次接收到用于触发表单提交的指令时,计数值为2,以此类推。
S32:将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位。
可选地,浏览器可以将计数值缓存在内存中,以在后续接收到该次请求的响应时,将计数值重置为0,以对下一次用于提交表单的请求重新计数。
S33:将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件。
浏览器在生成用于提交表单的请求之后,可以将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件,其中,服务器根据标志位的值判定是否发生重复提交表单事件的流程可以参见上述实施例,在此不再赘述。
本实施例中,通过在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值,将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件,能够有效防止表单重复提交。
图4是本发明另一实施例提出的防止表单重复提交的方法的流程示意图。
本实施例的执行主体可以为客户端。
参见图4,该方法包括:
S41:在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值。
S42:将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位。
S43:将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件。
S41-S43步骤的说明可以参见上述实施例,在此不再赘述。
S44:接收服务器发送的请求的响应,并根据请求的响应将计数值重置为0。
可选地,浏览器在接收到该次请求的响应时,可以将内存中的计数值重置为0,以对下一次用于提交表单的请求重新计数,保证表单提交操作符合业务规范,并且保证下一次提交表单的计数准确性和可靠性。
S45:接收服务器发送的表单重复提交的提示信息。
S46:将提示信息显示给用户,以对用户进行提示。
通过本步骤,能够避免用户再次触发表单提交,提升用户体验。
本实施例中,通过在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值,将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件,能够有效防止表单重复提交。浏览器在接收到该次请求的响应时,可以将内存中的计数值重置为0,以对下一次用于提交表单的请求重新计数,保证表单提交操作符合业务规范,并且保证下一次提交表单的计数准确性和可靠性。通过将提示信息显示给用户,以对用户进行提示,能够避免用户再次触发表单提交,提升用户体验。
图5是本发明另一实施例提出的防止表单重复提交的方法的流程示意图。
本实施例为防止表单重复提交的方法中客户端和服务器之间的交互流程。
参见图5,该方法包括:
S501:客户端在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值。
S502:客户端将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求。
其中,请求中包括用于标识提交次数的标志位。
S503:客户端将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件。
S504:服务器接收客户端发送的用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位。
S505:服务器判断标志位的值是否为预设次数,若是,执行S506,否则,执行S509。
S506:服务器判定未发生重复提交表单事件。
S507:服务器生成请求的响应,并将响应发送至客户端。
S508:客户端接收服务器发送的请求的响应,并根据请求的响应将计数值重置为0。
S509:服务器判断标志位的值是否大于预设阈值,若是,执行S510,否则,执行S511。
S510:服务器丢弃请求。
S511:服务器判定发生重复提交表单事件。
S512:服务器生成表单重复提交的提示信息,并将提示信息发送至客户端,以使客户端对用户进行提示。
S513:客户端接收服务器发送的表单重复提交的提示信息。
S514:客户端将提示信息显示给用户,以对用户进行提示。
本实施例中步骤的说明可以参见上述实施例,在此不再赘述。
本实施例中,通过在客户端发送的用于提交表单的请求中的标志位的值为预设次数时,判定未发生重复提交表单事件,生成请求的响应,并将响应发送至客户端,能够有效防止表单重复提交。通过设置预设阈值,可以有效识别出恶意提交请求,且根据请求中标志位的值来判定是否发生恶意提交事件,不依赖于客户端,并且不依赖于服务器同步令牌Token,可靠性高,易于实现,有效避免表单恶意提交事件。在判定客户端发送的用于提交表单的请求为恶意提交事件时,可以不对请求进行处理,直接丢弃该请求,能够有效节省服务器生成响应的资源消耗,提升用户体验。在判定客户端发送的用于提交表单的请求为表单重复提交事件时,可以生成表单重复提交的提示信息,并将提示信息发送至客户端,以使客户端对用户进行提示,避免用户再次触发表单提交,提升用户体验。通过在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值,将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件,能够有效防止表单重复提交。浏览器在接收到该次请求的响应时,可以将内存中的计数值重置为0,以对下一次用于提交表单的请求重新计数,保证表单提交操作符合业务规范,并且保证下一次提交表单的计数准确性和可靠性。
图6是本发明一实施例提出的防止表单重复提交的装置的结构示意图。该防止表单重复提交的装置600可以通过软件、硬件或者两者的结合实现。
参见图6,该防止表单重复提交的装置600可以包括:请求接收模块610、第一判断模块620、第一判定模块630,以及响应生成模块640。其中,
请求接收模块610,用于接收客户端发送的用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位。
第一判断模块620,用于判断标志位的值是否为预设次数。
第一判定模块630,用于在标志位的值为预设次数时,判定未发生重复提交表单事件。
响应生成模块640,用于生成请求的响应,并将响应发送至客户端。
一些实施例中,参见图7,该防止表单重复提交的装置600还可以包括:
第二判定模块650,用于在标志位的值不为预设次数时,判定发生重复提交表单事件。
可选地,预设次数为1。
提示信息生成模块660,用于生成表单重复提交的提示信息,并将提示信息发送至客户端,以使客户端对用户进行提示。
第二判断模块670,用于判断标志位的值是否大于预设阈值。
丢弃模块680,用于在标志位的值大于预设阈值时,丢弃请求。
需要说明的是,前述图1-图2实施例中对防止表单重复提交的方法实施例的解释说明也适用于该防止表单重复提交的装置,其实现原理类似,此处不再赘述。
本实施例中,通过在客户端发送的用于提交表单的请求中的标志位的值为预设次数时,判定未发生重复提交表单事件,生成请求的响应,并将响应发送至客户端,能够有效防止表单重复提交。
图8是本发明另一实施例提出的防止表单重复提交的装置的结构示意图。该防止表单重复提交的装置800可以通过软件、硬件或者两者的结合实现。
参见图8,该防止表单重复提交的装置800可以包括:计数模块810、第一请求生成模块820、以及请求发送模块830。其中,
计数模块810,用于在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值。
请求生成模块820,用于将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,其中,请求中包括用于标识提交次数的标志位。
请求发送模块830,用于将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件。
一些实施例中,参见图9,该防止表单重复提交的装置800还可以包括:
响应接收模块840,用于接收服务器发送的请求的响应,并根据请求的响应将计数值重置为0。
提示信息接收模块850,用于接收服务器发送的表单重复提交的提示信息。
显示模块860,用于将提示信息显示给用户,以对用户进行提示。
需要说明的是,前述图3-图4实施例中对防止表单重复提交的方法实施例的解释说明也适用于该防止表单重复提交的装置,其实现原理类似,此处不再赘述。
本实施例中,通过在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值,将计数值作为标志位的值,并根据指令和标志位生成用于提交表单的请求,将请求发送至服务器,以使服务器根据标志位的值判定是否发生重复提交表单事件,能够有效防止表单重复提交。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种防止表单重复提交的方法,其特征在于,包括以下步骤:
接收客户端发送的用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;
判断所述标志位的值是否为预设次数;
在所述标志位的值为所述预设次数时,判定未发生重复提交表单事件;
生成所述请求的响应,并将所述响应发送至所述客户端。
2.如权利要求1所述的防止表单重复提交的方法,其特征在于,所述判断所述标志位的值是否为预设次数之后,还包括:
在所述标志位的值不为所述预设次数时,判定发生所述重复提交表单事件;
生成表单重复提交的提示信息,并将所述提示信息发送至所述客户端,以使所述客户端对用户进行提示。
3.如权利要求1所述的防止表单重复提交的方法,其特征在于,还包括:
判断所述标志位的值是否大于预设阈值;
在所述标志位的值大于所述预设阈值时,丢弃所述请求。
4.一种防止表单重复提交的方法,其特征在于,包括以下步骤:
在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值;
将所述计数值作为标志位的值,并根据所述指令和所述标志位生成用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;
将所述请求发送至所述服务器,以使所述服务器根据所述标志位的值判定是否发生重复提交表单事件。
5.如权利要求4所述的防止表单重复提交的方法,其特征在于,还包括:
接收所述服务器发送的所述请求的响应,并根据所述请求的响应将所述计数值重置为0。
6.一种防止表单重复提交的装置,其特征在于,包括:
请求接收模块,用于接收客户端发送的用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;
第一判断模块,用于判断所述标志位的值是否为预设次数;
第一判定模块,用于在所述标志位的值为所述预设次数时,判定未发生重复提交表单事件;
响应生成模块,用于生成所述请求的响应,并将所述响应发送至所述客户端。
7.如权利要求6所述的防止表单重复提交的装置,其特征在于,还包括:
第二判定模块,用于在所述标志位的值不为所述预设次数时,判定发生所述重复提交表单事件;
提示信息生成模块,用于生成表单重复提交的提示信息,并将所述提示信息发送至所述客户端,以使所述客户端对用户进行提示。
8.如权利要求6所述的防止表单重复提交的装置,其特征在于,还包括:
第二判断模块,用于判断所述标志位的值是否大于预设阈值;
丢弃模块,用于在所述标志位的值大于所述预设阈值时,丢弃所述请求。
9.一种防止表单重复提交的装置,其特征在于,包括:
计数模块,用于在接收到用于触发表单提交的指令时,对提交表单的次数进行计数,得到计数值;
请求生成模块,用于将所述计数值作为标志位的值,并根据所述指令和所述标志位生成用于提交表单的请求,其中,所述请求中包括用于标识提交次数的标志位;
请求发送模块,用于将所述请求发送至所述服务器,以使所述服务器根据所述标志位的值判定是否发生重复提交表单事件。
10.如权利要求9所述的防止表单重复提交的装置,其特征在于,还包括:
响应接收模块,用于接收所述服务器发送的所述请求的响应,并根据所述请求的响应将所述计数值重置为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610782294.7A CN106372174A (zh) | 2016-08-31 | 2016-08-31 | 防止表单重复提交的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610782294.7A CN106372174A (zh) | 2016-08-31 | 2016-08-31 | 防止表单重复提交的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106372174A true CN106372174A (zh) | 2017-02-01 |
Family
ID=57898714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610782294.7A Pending CN106372174A (zh) | 2016-08-31 | 2016-08-31 | 防止表单重复提交的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106372174A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107578211A (zh) * | 2017-08-15 | 2018-01-12 | 天津大学 | 自动备案系统及方法 |
CN109144625A (zh) * | 2017-06-28 | 2019-01-04 | 东软集团股份有限公司 | 防重复提交方法、装置和系统 |
CN109284046A (zh) * | 2018-09-18 | 2019-01-29 | 广州虎牙信息科技有限公司 | 一种控制控件的方法、装置、终端及存储介质 |
CN109324835A (zh) * | 2018-10-09 | 2019-02-12 | 郑州云海信息技术有限公司 | 一种输入事件处理的方法、设备及存储介质 |
CN110177145A (zh) * | 2019-05-28 | 2019-08-27 | 四川长虹电器股份有限公司 | 一种防止表单重复提交的方法 |
CN111063105A (zh) * | 2019-12-26 | 2020-04-24 | 深圳市智莱科技股份有限公司 | 一种自动售货机的出货控制方法及系统 |
CN111078206A (zh) * | 2019-11-25 | 2020-04-28 | 贝壳技术有限公司 | 表单提交方法及系统 |
CN111371852A (zh) * | 2020-02-24 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 一种数据处理的方法以及相关装置 |
CN112506696A (zh) * | 2021-01-22 | 2021-03-16 | 马瑞利汽车电子(广州)有限公司 | 一种防止模块间请求丢失的方法 |
CN112905163A (zh) * | 2021-03-15 | 2021-06-04 | 上海悦易网络信息技术有限公司 | 一种表单提交方法及设备 |
CN112988881A (zh) * | 2019-12-13 | 2021-06-18 | Oppo广东移动通信有限公司 | 一种数据同步方法、装置及计算机可读存储介质 |
CN113377855A (zh) * | 2021-06-25 | 2021-09-10 | 芜湖雄狮汽车科技有限公司 | 防止表单重新提交的方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246713A (zh) * | 2013-04-24 | 2013-08-14 | 优视科技有限公司 | 一种网页浏览方法及装置 |
CN103763304A (zh) * | 2013-12-20 | 2014-04-30 | 百度在线网络技术(北京)有限公司 | 一种提交信息的方法和装置 |
CN105069038A (zh) * | 2015-07-22 | 2015-11-18 | 上海斐讯数据通信技术有限公司 | 网页操作请求处理方法及装置 |
-
2016
- 2016-08-31 CN CN201610782294.7A patent/CN106372174A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246713A (zh) * | 2013-04-24 | 2013-08-14 | 优视科技有限公司 | 一种网页浏览方法及装置 |
CN103763304A (zh) * | 2013-12-20 | 2014-04-30 | 百度在线网络技术(北京)有限公司 | 一种提交信息的方法和装置 |
CN105069038A (zh) * | 2015-07-22 | 2015-11-18 | 上海斐讯数据通信技术有限公司 | 网页操作请求处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
业余选手: "java web 防止表单重复提交解决方案", 《HTTPS://BLOG.CSDN.NET/H183288132/ARTICLE/DETAILS/50184199》 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144625A (zh) * | 2017-06-28 | 2019-01-04 | 东软集团股份有限公司 | 防重复提交方法、装置和系统 |
CN109144625B (zh) * | 2017-06-28 | 2021-08-27 | 东软集团股份有限公司 | 防重复提交方法、装置和系统 |
CN107578211A (zh) * | 2017-08-15 | 2018-01-12 | 天津大学 | 自动备案系统及方法 |
CN109284046A (zh) * | 2018-09-18 | 2019-01-29 | 广州虎牙信息科技有限公司 | 一种控制控件的方法、装置、终端及存储介质 |
CN109284046B (zh) * | 2018-09-18 | 2021-04-27 | 广州虎牙信息科技有限公司 | 一种控制控件的方法、装置、终端及存储介质 |
CN109324835A (zh) * | 2018-10-09 | 2019-02-12 | 郑州云海信息技术有限公司 | 一种输入事件处理的方法、设备及存储介质 |
CN110177145A (zh) * | 2019-05-28 | 2019-08-27 | 四川长虹电器股份有限公司 | 一种防止表单重复提交的方法 |
CN111078206B (zh) * | 2019-11-25 | 2023-03-24 | 贝壳技术有限公司 | 表单提交方法及系统 |
CN111078206A (zh) * | 2019-11-25 | 2020-04-28 | 贝壳技术有限公司 | 表单提交方法及系统 |
CN112988881A (zh) * | 2019-12-13 | 2021-06-18 | Oppo广东移动通信有限公司 | 一种数据同步方法、装置及计算机可读存储介质 |
CN111063105B (zh) * | 2019-12-26 | 2021-08-06 | 深圳市智莱科技股份有限公司 | 一种自动售货机的出货控制方法及系统 |
CN111063105A (zh) * | 2019-12-26 | 2020-04-24 | 深圳市智莱科技股份有限公司 | 一种自动售货机的出货控制方法及系统 |
CN111371852A (zh) * | 2020-02-24 | 2020-07-03 | 腾讯科技(深圳)有限公司 | 一种数据处理的方法以及相关装置 |
CN111371852B (zh) * | 2020-02-24 | 2022-01-25 | 腾讯科技(深圳)有限公司 | 一种数据处理的方法以及相关装置 |
CN112506696A (zh) * | 2021-01-22 | 2021-03-16 | 马瑞利汽车电子(广州)有限公司 | 一种防止模块间请求丢失的方法 |
CN112905163A (zh) * | 2021-03-15 | 2021-06-04 | 上海悦易网络信息技术有限公司 | 一种表单提交方法及设备 |
CN112905163B (zh) * | 2021-03-15 | 2024-04-16 | 上海万物新生环保科技集团有限公司 | 一种表单提交方法及设备 |
CN113377855A (zh) * | 2021-06-25 | 2021-09-10 | 芜湖雄狮汽车科技有限公司 | 防止表单重新提交的方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106372174A (zh) | 防止表单重复提交的方法和装置 | |
EP3398106B1 (en) | Utilizing behavioral features to identify bot | |
KR102365796B1 (ko) | 가상 물품을 할당하기 위한 방법과 시스템 | |
TW201134243A (en) | Detection of start frame delimiters in a wireless digital communication system | |
CN101406004A (zh) | 在包括绑定适配器的通信网络中检测故障的方法和装置 | |
CN108207119B (zh) | 对损坏网络连接的基于机器学习的识别 | |
JP4726951B2 (ja) | 重複ログイン検出方法及びシステム | |
US20180131779A1 (en) | Recording And Triggering Web And Native Mobile Application Events With Mapped Data Fields | |
JP2015097410A5 (zh) | ||
US10659311B2 (en) | Method and apparatus for processing delivery data, and storage medium | |
CN103763104B (zh) | 一种动态验证的方法及系统 | |
CN106294719B (zh) | 信息展现方法以及装置 | |
CN111106976B (zh) | 一种cdn网络的探测方法、装置、电子设备及可读存储介质 | |
JP2019507424A5 (zh) | ||
JP2018537735A5 (zh) | ||
CN105162604A (zh) | 一种基于特征图像识别的验证方法、服务器及系统 | |
CN108256811A (zh) | 工作信息处理方法、装置、计算机设备和存储介质 | |
CN104917731B (zh) | 一种提高数据显示速度的方法及系统、服务器、浏览器 | |
RU2016130455A (ru) | Способ и система для определения того, является ли пользователь человеком | |
US10565210B2 (en) | Generating and verifying a reputational profile | |
CN105718462B (zh) | 一种针对应用操作的作弊检测方法及装置 | |
CN105530230A (zh) | 一种指纹认证的方法、装置及服务器 | |
CN104660480B (zh) | 一种帐号异常处理的方法、装置及系统 | |
JP2013196159A (ja) | 情報処理装置、情報処理方法、通信端末および情報処理システム | |
CN105245700B (zh) | 防丢失方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170201 |