CN108733559B - 页面事件的触发方法、终端设备及介质 - Google Patents
页面事件的触发方法、终端设备及介质 Download PDFInfo
- Publication number
- CN108733559B CN108733559B CN201810309391.3A CN201810309391A CN108733559B CN 108733559 B CN108733559 B CN 108733559B CN 201810309391 A CN201810309391 A CN 201810309391A CN 108733559 B CN108733559 B CN 108733559B
- Authority
- CN
- China
- Prior art keywords
- page
- button object
- event
- window
- trigger request
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明适用于信息安全技术领域,提供了一种页面事件的触发方法、终端设备以及介质,该方法包括:生成显示页面;其中,显示页面中包含子窗口,子窗口的页面代码用于描述第一按钮对象的控制逻辑,第一按钮对象存在于子窗口;在显示页面中,加载与预设页面事件相对应的第二按钮对象;控制子窗口中的第一按钮对象对第二按钮对象的点击事件进行持续监听;若检测到第二按钮对象的点击事件被触发,则根据控制逻辑,令第一按钮对象生成页面事件的触发请求,并将触发请求发送至显示页面所对应的后台服务器;后台服务器基于触发请求,响应页面事件。本发明实现了实际按钮对象与用户所点击的按钮对象的页面隔离,提高了基于页面按钮来触发操控事件的安全性。
Description
技术领域
本发明属于信息安全技术领域,尤其涉及一种页面事件的触发方法、终端设备以及计算机可读存储介质。
背景技术
目前,网页中大部分的事件都是通过点击按钮控件来触发的,例如,要触发转账事件、留言事件时,用户需要分别点击转账按钮以及留言按钮来执行触发。
然而,若网页代码中,按钮控件所链接的事件内容被恶意篡改,且用户在不知情的情况下点击了该按钮,则会触发了非用户实际所需的事件;另外,当网页页面受到了跨站脚本(Cross Site Scripting,xss)攻击时,只要用户浏览该页面,嵌入于页面代码里面的恶意脚本代码就会被执行,从而触发了对用户点击按钮控件的模拟操作,即,自动点击当前网页页面中的按钮控件。由此,产生了在用户不知情的情况下非法触发各类页面事件的问题,例如,非法转账的问题。可见,现有技术中,基于页面按钮来触发操控事件的方式存在较大的安全风险。
发明内容
有鉴于此,本发明实施例提供了一种页面事件的触发方法、终端设备以及计算机可读存储介质,以解决现有技术中基于页面按钮来触发操控事件的方式存在较大安全风险的问题。
本发明实施例的第一方面提供了一种页面事件的触发方法,包括:
客户端生成显示页面;其中,所述显示页面中包含子窗口,所述子窗口的页面代码用于描述第一按钮对象的控制逻辑,所述第一按钮对象存在于所述子窗口中;
在所述显示页面中,所述客户端加载与预设的页面事件相对应的第二按钮对象;
所述客户端控制所述子窗口中的所述第一按钮对象对所述第二按钮对象的点击事件进行持续监听;
若检测到所述第二按钮对象的点击事件被触发,则所述客户端根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器;
所述后台服务器基于所述触发请求,响应所述页面事件。
本发明实施例的第二方面提供了一种终端设备,包括存储器以及处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
生成显示页面;其中,所述显示页面中包含子窗口,所述子窗口的页面代码用于描述第一按钮对象的控制逻辑,所述第一按钮对象存在于所述子窗口中;
在所述显示页面中,加载与预设的页面事件相对应的第二按钮对象;
控制所述子窗口中的所述第一按钮对象对所述第二按钮对象的点击事件进行持续监听;
若检测到所述第二按钮对象的点击事件被触发,则根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器,以使所述后台服务器基于所述触发请求,响应所述页面事件。
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
生成显示页面;其中,所述显示页面中包含子窗口,所述子窗口的页面代码用于描述第一按钮对象的控制逻辑,所述第一按钮对象存在于所述子窗口中;
在所述显示页面中,加载与预设的页面事件相对应的第二按钮对象;
控制所述子窗口中的所述第一按钮对象对所述第二按钮对象的点击事件进行持续监听;
若检测到所述第二按钮对象的点击事件被触发,则根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器,以使所述后台服务器基于所述触发请求,响应所述页面事件。
本发明实施例中,通过在原来所需加载的显示页面中生成子窗口,并在子窗口的页面代码中预设与按钮对象关联的控制逻辑,控制子窗口中的按钮对象对显示页面中按钮对象的点击事件进行持续监听,保证了在显示页面的按钮对象中检测到点击操作时,实际只有子窗口中的按钮对象才能够发出页面事件触发请求,故实现了实际按钮对象与用户所点击的按钮对象的页面隔离。由于子窗口与显示页面属于不同的框架结构,二者并非同源页面,正常用户可以通过不同源的按钮对象来触发自己所需执行的事件,而脚本代码无法通过不同源的页面来激活子窗口中的按钮对象生成触发请求,因此,提高了基于页面按钮来触发操控事件的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的页面事件的触发方法的实现流程图;
图2是本发明实施例提供的页面事件的触发方法的交互示例图;
图3是本发明实施例提供的页面事件的触发方法S105的具体实现流程图;
图4是本发明实施例提供的页面事件的触发方法S101的具体实现流程图;
图5是本发明实施例提供的页面事件的触发方法S104的具体实现流程图;
图6是本发明实施例提供的页面事件的触发方法的结构框图;
图7是本发明实施例提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1示出了本发明实施例提供的页面事件的触发方法的实现流程,本发明实施例的执行主体为客户端,该方法流程包括步骤S101至S105。各步骤的具体实现原理如下:
S101:客户端生成显示页面;其中,所述显示页面中包含子窗口,所述子窗口的页面代码用于描述第一按钮对象的控制逻辑,所述第一按钮对象存在于所述子窗口中。
S102:在所述显示页面中,所述客户端加载与预设的页面事件相对应的第二按钮对象。
本发明实施例中,显示页面为对外提供浏览信息的网页页面或应用程序页面。当检测到用户发出的页面展示指令时,根据开发人员在页面开发过程中所写入的页面代码,利用运行于客户端中的浏览器等代码解析器,对显示页面的页面代码进行解析处理,以生成包含各项页面对象的页面。显示页面的页面对象包括但不限于图片、文字以及超链接等。其中,为了能够基于显示页面来触发用户所需的页面事件,在上述显示页面中还预设了对应不同页面事件的按钮对象。现有技术中,只要检测到对一按钮对象的触控指令,则会向后台服务器发出该按钮对象对应的页面事件的触发请求。然而,本发明实施例中,在显示页面的页面代码中预设了内联框架标签<iframe>,因此,客户端将基于该内联框架标签来生成一内联的子窗口。其中,子窗口用于展示除该显示页面之外的另一外部页面。
本发明实施例中,上述外部页面为开发人员所预先设置的所需调用的页面。该外部页面的页面代码中存在关于第一按钮对象的控制逻辑,其中,第一按钮对象为外部页面中所存在的按钮对象。为了便于区分,将上述显示页面中所存在的按钮对象称为第二按钮对象。由于第一按钮对象以及第二按钮对象存在于不同的页面中,因此,二者为不同源的按钮对象。
S103:所述客户端控制所述子窗口中的所述第一按钮对象对所述第二按钮对象的点击事件进行持续监听。
本发明实施例中,客户端通过jquery的onclick监听事件,控制子窗口中的第一按钮对象对显示页面中的第二按钮对象的点击事件进行持续监听,以判断在第二按钮对象中是否检测到点击指令。当用户对第二按钮对象执行点击操作时,客户端不对第二按钮对象所原本关联的页面事件进行请求,而是通过事件监听器,将监听到的点击事件通知第一按钮对象。
S104:若检测到所述第二按钮对象的点击事件被触发,则所述客户端根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器。
当第一按钮对象检测到关于第二按钮对象的点击事件时,客户端控制第一按钮对象生成基于一页面事件的触发请求,并通过postMessage消息传输方式,令第一按钮对象将触发请求发送至后台服务器。其中,该页面事件为与第二按钮对象所预设关联的页面事件,所述后台服务器为页面事件所链接的服务器。
示例性地,若显示页面A中,第二按钮对象为“银行卡信息查询”按钮,则在检测到“银行卡信息查询”按钮被按下后,子窗口B中的第一按钮对象将识别出该“银行卡信息查询”按钮所对应的跳转地址为http://www.abc.com/23l.html,因此,第一按钮对象将向域名www.abc.com所属的服务器发出银行卡信息查询请求。
S105:所述后台服务器基于所述触发请求,响应所述页面事件。
后台服务器根据第二按钮对象所发出的触发请求作出响应,并将响应结果直接返回至第一按钮对象所在的显示页面,以使用户在该显示页面中浏览自身所需的页面信息。
本发明实施例中,通过在原来所需加载的显示页面中生成子窗口,并在子窗口的页面代码中预设与按钮对象关联的控制逻辑,控制子窗口中的按钮对象对显示页面中按钮对象的点击事件进行持续监听,保证了在显示页面的按钮对象中检测到点击操作时,实际只有子窗口中的按钮对象才能够发出页面事件触发请求,故实现了实际按钮对象与用户所点击的按钮对象的页面隔离。由于子窗口与显示页面属于不同的框架结构,二者并非同源页面,正常用户可以通过不同源的按钮对象来触发自己所需执行的事件,而脚本代码无法通过不同源的页面来激活子窗口中的按钮对象生成触发请求,因此,提高了基于页面按钮来触发操控事件的安全性。
为了便于理解上述步骤S101至S105的实现过程,图2示出了本发明实施例提供的页面事件的触发方法的一交互示例图。如图2所示的示例中,用户可以在显示页面mainpage中查看到一正常显示的第二按钮对象button,同时,main page中加载有一子窗口iframe,该子窗口所显示的页面为proxyhost.com这一域名的外部页面。iframe中存在第一按钮对象safe button,其关联有预设的控制逻辑,用于使得第一按钮对象safe button能够持续监听第二按钮对象button上的点击事件。当检测到button上的点击操作发生时,button通过onClick事件将通知消息传递至safe button,并由safe button发送postmessage消息后,基于异步JavaScript和XML(Asynchronous Javascript And XML,Ajax),将页面事件触发请求发送至后台服务器Server。最终,由Server将页面事件所对应的响应数据进行返回。
优选地,作为本发明的一个实施例,图3示出了本发明实施例提供的页面事件的触发方法S105的具体实现流程,详述如下:
S1051:所述后台服务器对所述触发请求进行解析处理,提取出所述触发请求中第一标志位的属性值,所述第一标志位的属性值用于记录所述触发请求的源地址。
每一触发请求的header头部信息中均存在referer标志位,referer标志位的属性值用于记录触发请求的来源页面地址,即,用于记录该触发请求是从哪个页面链接过来的。
本发明实施例中,后台服务器对接收到的关于任一页面事件的触发请求进行解析处理,以识别出该触发请求中referer字段所属的标志位后,对该标志位的属性值进行提取。
S1052:所述后台服务器获取预存储的与所述页面事件关联的链接地址,并判断所述属性值与所述链接地址是否相同。
根据第一按钮对象所请求触发的页面事件,后台服务器获取预存储的与该页面事件匹配的访问控制列表。上述访问控制列表用于存储授权访问该页面事件的各个主机对象的链接地址。
后台服务器判断上述从referer标志位中所提取得到的属性值与访问控制列表中的任一链接地址是否相同。
S1053:若所述属性值与所述链接地址相同,则所述后台服务器触发所述页面事件;若所述属性值与所述链接地址不同,则所述后台服务器拒绝响应所述页面事件。
若从referer标志位中所提取得到的属性值与访问控制列表中的任一链接地址相同,则确认触发请求的来源页面为合法页面,此时,后台服务器对该触发请求进行响应处理,以触发客户端中的页面事件。
若从referer标志位中所提取得到的属性值与访问控制列表中的任一链接地址相同,则确认触发请求的来源页面为非法页面,该触发请求可能是其他页面的恶意脚本代码所自动发出的触发请求,因此,后台服务器对该触发请求进行拒绝响应处理,不执行对页面事件的触发。
本发明实施例中,后台服务器在接收到触发请求时,通过提取referer标志位的属性值,判断该属性值与预设的链接地址是否匹配,仅在匹配的情况下才触发页面事件,保证了原本嵌入于显示页面的页面代码里面的恶意脚本代码即使被执行,并触发了对第二按钮控件的模拟操作,后台服务器也能根据页面源地址来识别出该触发请求并非基于安全的第一按钮控件所生成的,因此,实现了对合法请求以及非法请求的准确识别,提高了页面操控事件的响应安全。
优选地,在上述各个实施例的基础之上,对显示页面中子窗口的显示方式进行进一步地限定,具体地,图4示出了本发明实施例提供的页面事件的触发方法S101的具体实现流程,详述如下:
S1011:所述客户端检测所需加载的显示页面的页面代码中,是否存在内联框架标签。
本发明实施例中,当客户端需要加载一显示页面时,调用该显示页面的页面代码,并检测该页面代码中是否存在内联框架标签<iframe>。
S1012:若所述客户端检测到所述内联框架标签存在,则读取所述内联框架标签关联的链接地址,并获取所述链接地址对应的页面对象;其中,所述链接地址对应的页面对象为第一按钮对象。
若显示页面的页面代码中存在内联框架标签,则根据内联框架标签内部的src属性,确定内该内联框架标签关联的链接地址。例如,若页面代码中所存在的内联框架标签为<iframe src="/index123.html">,则读取得到的该内联框架标签所关联的链接地址为“/index123.html”。
基于链接地址解析得到内联框架标签所指示的外部页面的存储路径,查找定位出所需加载的该外部页面的存储位置,从而在进入该存储位置后,读取链接地址所对应的外部页面的页面代码。通过代码解析器,对上述外部页面的页面代码进行解析处理,得到其所包含的页面对象。
本发明实施例中,在上述内联框架标签所指示的外部页面的页面代码中,预设有至少一个第一按钮对象,并且,预设有关于该第一按钮对象的控制逻辑以及样式参数。上述控制逻辑用于使第一按钮对象能够监听当前显示页面中的第二按钮对象,并用于控制第一按钮对象向后台服务器发出页面事件的触发请求。
S1013:根据所述内联框架标签以及所述页面对象,所述客户端生成显示页面,并在所述子窗口中对所述第一按钮对象进行隐藏显示。
根据上述识别到的内联框架标签以及页面对象,客户端在显示页面中为每一内联框架标签生成一子窗口,并在子窗口中渲染其所链接的外部页面的页面对象,即,渲染第一按钮对象。
优选地,外部页面中各个页面对象的样式参数均为透明值,由此使得客户端在子窗口中,对第一按钮对象等各个页面对象进行隐藏显示。
本发明实施例中,通过检测显示页面代码中的内联框架标签,仅在有内联框架标签存在的前提下才生成包含第一按钮对象的子窗口,使得显示页面即使在没有第一按钮对象的情况下,也能正常地响应用户所发出的页面事件触发请求;通过在子窗口中隐藏显示第一按钮对象,保证了用户不会察觉到显示页面的变化情况,在维持了用户在该显示页面中的操作习惯的同时,由于第二按钮对象所对应的页面事件的触发请求基于隐藏的第一按钮对象来发出,故提高了页面事件的安全性。
作为本发明的一个实施例,图5示出了本发明实施例提供的页面事件的触发方法S104的具体实现流程,详述如下:
S1041:若检测到所述第二按钮对象的点击事件被触发,则所述客户端在所述子窗口的页面代码中,获取当前时刻所包含的第二标志位的属性值,所述第二标志位的属性值用于表示所述第一按钮对象的活动状态。
本发明实施例中,在客户端所展生成的子窗口的页面代码中,存在一内部标志位,该内部标志位的属性值为动态变化值,其根据第一按钮对象所检测的第二按钮对象的点击次数来确定。其中,用户对第二按钮对象执行点击操作的次数为上述第二按钮对象的点击次数,该点击次数可由第一按钮对象来监听获得。
具体地,每隔预设的时间间隔,所述客户端检测最近预设时长内所述第二按钮对象的点击事件的触发次数。最近预设时长表示当前时刻之前的最近一个历史时间段,且该历史时间段的时长为预设值。例如,最近预设时长可以是最近10秒内,最近2分钟内等。
本发明实施例中,上述内部标志位的属性值为逻辑真值true或逻辑假值false,即,该属性值将会在逻辑真值true以及逻辑假值false之间动态变化。若检测到最近预设时长内第二按钮对象的点击事件的触发次数大于预设阈值,则客户端将在子窗口的页面代码中,将上述内部标志位的属性值置为逻辑假值。若检测到最近预设时长内第二按钮对象的点击事件的触发次数小于或等于预设阈值,则客户端在子窗口的页面代码中,将上述内部标志位的属性值置为逻辑真值。
本发明实施例中,内部标志位的属性值还用于确定子窗口中第一按钮对象的活动状态。活动状态包括空闲状态以及忙碌状态。若内部标志位的属性值为逻辑真值,则表示第一按钮对象处于空闲状态;若内部标志位的属性值为逻辑假值,则表示第一按钮对象处于忙碌状态;可见,若最近预设时长内用户对第二按钮对象的点击次数过于频繁,则客户端将会自动将第一按钮对象的活动状态置为忙碌状态。
当检测到第二按钮对象的点击事件时,根据预设于子窗口的页面代码中的控制逻辑,客户端并非直接令第一按钮对象生成该页面事件的触发请求,而是先读取子窗口的页面代码中,其所实时生成的内部标志位的属性值。
S1042:若所述第二标志位的属性值为逻辑真值,则所述客户端根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器。
S1043:若所述第二标志位的属性值为逻辑假值,则所述客户端拒绝响应所述点击事件。
若当前所实时读取到的内部标志位的属性值为逻辑真值,则客户端确定当前第二按钮对象的触控操作为合法操作,故令第一按钮对象生成页面事件的触发请求,并将触发请求发送至所述显示页面所对应的后台服务器。若当前所实时读取到的内部标志位的属性值为逻辑假值,则客户端确定当前第二按钮对象的触控操作为非法操作,拒绝响应此次第二按钮对象上所检测到的触控事件。
本发明实施例中,通过令第一按钮对象持续监测第二按钮对象上的触控事件,并在检测到触控事件发生时,先判断内部标志位的属性值是否为逻辑真值,从而确定是否需要响应该触控事件,使得用户在连续、快速点击同一个第二按钮对象时,客户端中也不会令第一按钮对象生成数目过多的页面事件触发请求,能够避免重复的页面事件触发请求的发送次数,由此也使得后台服务器能够正常响应并返回用户所请求的页面资源,避免浪费了系统资源。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的页面事件的触发方法,图6示出了本发明实施例提供的页面事件的触发系统的结构框图。为了便于说明,仅示出了与本实施例相关的部分。
参照图6,该系统包括客户端61以及服务器62,
所述客户端61用于生成显示页面;其中,所述显示页面中包含子窗口,所述子窗口的页面代码用于描述第一按钮对象的控制逻辑,所述第一按钮对象存在于所述子窗口中。
在所述显示页面中,所述客户端61还用于加载与预设的页面事件相对应的第二按钮对象。
所述客户端61还用于控制所述子窗口中的所述第一按钮对象对所述第二按钮对象的点击事件进行持续监听。
若检测到所述第二按钮对象的点击事件被触发,则所述客户端61还用于根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器62。
所述后台服务器62用于基于所述触发请求,响应所述页面事件。
可选地,所述客户端61还用于检测所需加载的显示页面的页面代码中,是否存在内联框架标签。
若所述客户端61还用于检测到所述内联框架标签存在,则读取所述内联框架标签关联的链接地址,并获取所述链接地址对应的页面对象;其中,所述链接地址对应的页面对象为第一按钮对象。
根据所述内联框架标签以及所述页面对象,所述客户端61还用于生成显示页面,并在所述显示页面所包含的所述子窗口中,对所述第一按钮对象进行隐藏显示。
可选地,所述后台服务器62还用于对所述触发请求进行解析处理,提取出所述触发请求中第一标志位的属性值,所述第一标志位的属性值用于记录所述触发请求的源地址。
所述后台服务器62还用于获取预存储的与所述内联框架标签关联的链接地址,并判断所述属性值与所述链接地址是否相同。
若所述属性值与所述链接地址相同,则所述后台服务器62还用于触发所述页面事件;若所述属性值与所述链接地址不同,则所述后台服务器62还用于拒绝响应所述页面事件。
可选地,若检测到所述第二按钮对象的点击事件被触发,则所述客户端61还用于在所述子窗口的页面代码中,获取当前时刻其所包含的第二标志位的属性值,所述第二标志位的属性值用于表示所述第一按钮对象的活动状态。
若所述第二标志位的属性值为逻辑真值,则所述客户端61还用于根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器62。
若所述第二标志位的属性值为逻辑假值,则所述客户端61还用于拒绝响应所述点击事件。
可选地,每隔预设的时间间隔,所述客户端61还用于检测最近预设时长内所述第二按钮对象的点击事件的触发次数。
若所述触发次数大于预设阈值,则所述客户端61还用于在所述子窗口的页面代码中,将所述第二标志位的属性值置为逻辑假值。
若所述触发次数小于或等于预设阈值,则所述客户端61还用于在所述子窗口的页面代码中,将所述第二标志位的属性值置为逻辑真值。
图7是本发明一实施例提供的终端设备的示意图。如图7所示,该实施例的终端设备7包括:处理器70以及存储器71,所述存储器71中存储有可在所述处理器70上运行的计算机程序72,例如页面事件的触发程序。所述处理器70执行所述计算机程序72时实现上述各个页面事件的触发方法实施例中客户端所执行的步骤,例如图1所示的步骤101至105。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中客户端61的功能。
示例性的,所述计算机程序72可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述处理器70执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序72在所述终端设备7中的执行过程。
所述终端设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端设备7的示例,并不构成对终端设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种页面事件的触发方法,其特征在于,包括:
客户端生成显示页面;其中,所述显示页面中包含子窗口,所述子窗口的页面代码用于描述第一按钮对象的控制逻辑,所述第一按钮对象存在于所述子窗口中;
在所述显示页面中,所述客户端加载与预设的页面事件相对应的第二按钮对象;
所述客户端控制所述子窗口中的所述第一按钮对象对所述第二按钮对象的点击事件进行持续监听;
若检测到所述第二按钮对象的点击事件被触发,则所述客户端根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器;
所述后台服务器基于所述触发请求,响应所述页面事件。
2.如权利要求1所述的页面事件的触发方法,其特征在于,所述客户端生成显示页面,包括:
所述客户端检测所需加载的显示页面的页面代码中,是否存在内联框架标签;
若所述客户端检测到所述内联框架标签存在,则读取所述内联框架标签关联的链接地址,并获取所述链接地址对应的页面对象;其中,所述链接地址对应的页面对象为第一按钮对象;
根据所述内联框架标签以及所述页面对象,所述客户端生成显示页面,并在所述显示页面所包含的所述子窗口中,对所述第一按钮对象进行隐藏显示。
3.如权利要求1所述的页面事件的触发方法,其特征在于,所述后台服务器基于所述触发请求,响应所述页面事件,包括:
所述后台服务器对所述触发请求进行解析处理,提取出所述触发请求中第一标志位的属性值,所述第一标志位的属性值用于记录所述触发请求的源地址;
所述后台服务器获取预存储的与所述页面事件关联的链接地址,并判断所述属性值与所述链接地址是否相同;
若所述属性值与所述链接地址相同,则所述后台服务器触发所述页面事件;若所述属性值与所述链接地址不同,则所述后台服务器拒绝响应所述页面事件。
4.如权利要求1所述的页面事件的触发方法,其特征在于,所述若检测到所述第二按钮对象的点击事件被触发,则所述客户端根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器,包括:
若检测到所述第二按钮对象的点击事件被触发,则所述客户端在所述子窗口的页面代码中,获取当前时刻所包含的第二标志位的属性值,所述第二标志位的属性值用于表示所述第一按钮对象的活动状态;
若所述第二标志位的属性值为逻辑真值,则所述客户端根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器;
若所述第二标志位的属性值为逻辑假值,则所述客户端拒绝响应所述点击事件。
5.如权利要求4所述的页面事件的触发方法,其特征在于,在所述若检测到所述第二按钮对象的点击事件被触发,则所述客户端在所述子窗口的页面代码中,获取当前时刻所包含的第二标志位的属性值之前,还包括:
每隔预设的时间间隔,所述客户端检测最近预设时长内所述第二按钮对象的点击事件的触发次数;
若所述触发次数大于预设阈值,则所述客户端在所述子窗口的页面代码中,将所述第二标志位的属性值置为逻辑假值;
若所述触发次数小于或等于预设阈值,则所述客户端在所述子窗口的页面代码中,将所述第二标志位的属性值置为逻辑真值。
6.一种终端设备,包括存储器以及处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如下步骤:
生成显示页面;其中,所述显示页面中包含子窗口,所述子窗口的页面代码用于描述第一按钮对象的控制逻辑,所述第一按钮对象存在于所述子窗口中;
在所述显示页面中,加载与预设的页面事件相对应的第二按钮对象;
控制所述子窗口中的所述第一按钮对象对所述第二按钮对象的点击事件进行持续监听;
若检测到所述第二按钮对象的点击事件被触发,则根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器,以使所述后台服务器基于所述触发请求,响应所述页面事件。
7.如权利要求6所述的终端设备,其特在于,所述生成显示页面,包括:
检测所需加载的显示页面的页面代码中,是否存在内联框架标签;
若检测到所述内联框架标签存在,则读取所述内联框架标签关联的链接地址,并获取所述链接地址对应的页面对象;其中,所述链接地址对应的页面对象为第一按钮对象;
根据所述内联框架标签以及所述页面对象,生成显示页面,并在所述子窗口中对所述第一按钮对象进行隐藏显示。
8.如权利要求6所述的终端设备,其特在于,所述若检测到所述第二按钮对象的点击事件被触发,则根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器,包括:
若检测到所述第二按钮对象的点击事件被触发,则在所述子窗口的页面代码中,获取当前时刻其所包含的第二标志位的属性值,所述第二标志位的属性值用于表示所述第一按钮对象的活动状态;
若所述第二标志位的属性值为逻辑真值,则根据所述控制逻辑,令第一按钮对象生成所述页面事件的触发请求,并将所述触发请求发送至所述显示页面所对应的后台服务器;
若所述第二标志位的属性值为逻辑假值,则拒绝响应所述点击事件。
9.如权利要求8所述的终端设备,其特在于,所述处理器执行所述计算机程序时还实现如下步骤:
每隔预设的时间间隔,检测最近预设时长内所述第二按钮对象的点击事件的触发次数;
若所述触发次数大于预设阈值,则在所述子窗口的页面代码中,将所述第二标志位的属性值置为逻辑假值;
若所述触发次数小于或等于预设阈值,则在所述子窗口的页面代码中,将所述第二标志位的属性值置为逻辑真值。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810309391.3A CN108733559B (zh) | 2018-04-09 | 2018-04-09 | 页面事件的触发方法、终端设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810309391.3A CN108733559B (zh) | 2018-04-09 | 2018-04-09 | 页面事件的触发方法、终端设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108733559A CN108733559A (zh) | 2018-11-02 |
CN108733559B true CN108733559B (zh) | 2023-03-28 |
Family
ID=63941232
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810309391.3A Active CN108733559B (zh) | 2018-04-09 | 2018-04-09 | 页面事件的触发方法、终端设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108733559B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960772A (zh) * | 2019-03-13 | 2019-07-02 | 北京三快在线科技有限公司 | 一种识别前端页面设计错误的方法及装置 |
CN110275754A (zh) * | 2019-06-28 | 2019-09-24 | 百度在线网络技术(北京)有限公司 | 用于用户界面呈现的交互方法、装置、设备及存储介质 |
CN110290216B (zh) * | 2019-06-28 | 2022-05-13 | 百度在线网络技术(北京)有限公司 | 监听执行方法、指令下发方法、装置、设备及存储介质 |
CN110928463B (zh) * | 2019-11-19 | 2021-08-17 | 北京达佳互联信息技术有限公司 | 控制远程设备的方法、装置及系统、业务服务器和存储介质 |
CN111639316B (zh) * | 2020-05-19 | 2021-04-06 | 北京芯盾时代科技有限公司 | 一种web页面的信息处理方法和装置 |
CN115202545B (zh) * | 2021-04-12 | 2024-05-14 | 广州视睿电子科技有限公司 | 基于接口的事件触发方法、模块、学习机及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615179A (zh) * | 2008-06-25 | 2009-12-30 | 国际商业机器公司 | 用于Web应用的跨域交互的方法和系统 |
US8543668B1 (en) * | 2009-11-24 | 2013-09-24 | Google Inc. | Click tracking using link styles |
US8548917B1 (en) * | 2012-09-07 | 2013-10-01 | Amazon Technologies, Inc. | Detection of child frames in web pages |
WO2017167042A1 (zh) * | 2016-04-01 | 2017-10-05 | 阿里巴巴集团控股有限公司 | 前端用户行为统计方法及装置 |
CN107329758A (zh) * | 2017-06-30 | 2017-11-07 | 武汉斗鱼网络科技有限公司 | 页面全屏设置方法、装置及用户终端 |
CN107391538A (zh) * | 2017-04-26 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 点击数据采集、处理和展示方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8793578B2 (en) * | 2011-07-11 | 2014-07-29 | International Business Machines Corporation | Automating execution of arbitrary graphical interface applications |
-
2018
- 2018-04-09 CN CN201810309391.3A patent/CN108733559B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615179A (zh) * | 2008-06-25 | 2009-12-30 | 国际商业机器公司 | 用于Web应用的跨域交互的方法和系统 |
US8543668B1 (en) * | 2009-11-24 | 2013-09-24 | Google Inc. | Click tracking using link styles |
US8548917B1 (en) * | 2012-09-07 | 2013-10-01 | Amazon Technologies, Inc. | Detection of child frames in web pages |
WO2017167042A1 (zh) * | 2016-04-01 | 2017-10-05 | 阿里巴巴集团控股有限公司 | 前端用户行为统计方法及装置 |
CN107391538A (zh) * | 2017-04-26 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 点击数据采集、处理和展示方法、装置、设备及存储介质 |
CN107329758A (zh) * | 2017-06-30 | 2017-11-07 | 武汉斗鱼网络科技有限公司 | 页面全屏设置方法、装置及用户终端 |
Also Published As
Publication number | Publication date |
---|---|
CN108733559A (zh) | 2018-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108733559B (zh) | 页面事件的触发方法、终端设备及介质 | |
US10079854B1 (en) | Client-side protective script to mitigate server loading | |
US11570211B1 (en) | Detection of phishing attacks using similarity analysis | |
US9614862B2 (en) | System and method for webpage analysis | |
US9756140B2 (en) | Tracking user behavior relative to a network page | |
US20130212465A1 (en) | Postponed rendering of select web page elements | |
US9208235B1 (en) | Systems and methods for profiling web applications | |
CN112703496B (zh) | 关于恶意浏览器插件对应用用户的基于内容策略的通知 | |
CN104766014A (zh) | 用于检测恶意网址的方法和系统 | |
CN108415804B (zh) | 获取信息的方法、终端设备及计算机可读存储介质 | |
US20180131779A1 (en) | Recording And Triggering Web And Native Mobile Application Events With Mapped Data Fields | |
CN111711617A (zh) | 网络爬虫的检测方法、装置、电子设备及存储介质 | |
EP2319007A2 (en) | Web page privacy risk detection | |
US20190222587A1 (en) | System and method for detection of attacks in a computer network using deception elements | |
CN111552854A (zh) | 一种网页数据抓取方法、装置、存储介质和设备 | |
CN112600797A (zh) | 异常访问行为的检测方法、装置、电子设备及存储介质 | |
WO2018008013A2 (en) | System and method for webpages scripts validation | |
CN114157568B (zh) | 一种浏览器安全访问方法、装置、设备及存储介质 | |
CN107180194B (zh) | 基于视觉分析系统进行漏洞检测的方法及装置 | |
US10581878B2 (en) | Detection of cross-site attacks using runtime analysis | |
CA2906517A1 (en) | Online privacy management | |
JP5753302B1 (ja) | ウェブページへのアクセスを警告するためのプログラム、方法、及びシステム | |
CN110708270B (zh) | 异常链接检测方法以及装置 | |
CN108509229B (zh) | 窗口跨域控制的方法、终端设备及计算机可读存储介质 | |
CN115051867A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |