基于浏览器插件的Eval函数执行方法、装置、设备及介质制造方法及图纸

技术编号:36871555 阅读:9 留言:0更新日期:2023-03-15 19:58
本申请属于互联网技术领域,涉及一种基于浏览器插件的Eval函数执行方法,包括获取网页注入脚本,在网页注入脚本中配置网页注入运行函数;调用网页注入运行函数获取Eval源码数据,得到网页注入执行脚本,并将网页注入执行脚本传送给浏览器插件;通过浏览器插件向待加载网页引入所述网页注入执行脚本,并执行网页注入执行脚本中的Eval源码数据,得到执行结果。本申请还提供一种基于浏览器插件的Eval函数执行装置、设备及介质。此外,本申请还涉及区块链技术,网页注入执行脚本可存储于区块链中。本申请能够使得浏览器插件在不同的扩展规范下执行Eval函数,实现Eval函数的兼容性。实现Eval函数的兼容性。实现Eval函数的兼容性。

【技术实现步骤摘要】
基于浏览器插件的Eval函数执行方法、装置、设备及介质


[0001]本申请涉及互联网
,尤其涉及一种基于浏览器插件的Eval函数执行方法、装置、设备及介质。

技术介绍

[0002]随着终端技术的快速发展,终端具备的功能越来越多,浏览器已成为终端的标准配置,用户通过浏览器可以浏览网页,获取其需要的信息。浏览器加载网页,可以通过浏览器插件进行驱动加载。
[0003]JavaScript是一种网络脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。Eval函数是JavaScript内置函数,Eval函数允许动态执行JavaScript源代码,很多场景需要用到Eval函数来获取代码片段的执行结果,例如,替换网页页面上下文的一些原生函数。在ManifestV2规范下,Eval函数是允许在浏览器插件的background(后台)里面执行的,但是,在ManifestV3规范下被禁止使用,使得Eval函数在不同规范下不具备兼容性。

技术实现思路

[0004]本申请实施例的目的在于提出一种基于浏览器插件的Eval函数执行方法、装置、设备及介质,以解决相关技术中Eval函数在不同规范下不具备兼容性的技术问题。
[0005]为了解决上述技术问题,本申请实施例提供一种基于浏览器插件的Eval函数执行方法,采用了如下所述的技术方案:
[0006]获取网页注入脚本,在所述网页注入脚本中配置网页注入运行函数;
[0007]调用所述网页注入运行函数获取Eval源码数据,得到网页注入执行脚本,并将所述网页注入执行脚本传送给浏览器插件;
[0008]通过所述浏览器插件向待加载网页引入所述网页注入执行脚本,并执行所述网页注入执行脚本中的所述Eval源码数据,得到执行结果。
[0009]进一步的,所述执行所述网页注入执行脚本中的所述Eval源码数据,得到执行结果的步骤包括:
[0010]通过所述浏览器插件的插件后台接收所述网页注入执行脚本中的所述Eval源码数据,并调用预先设置的网页注入函数将所述Eval源码数据传递至所述待加载网页的网页脚本;
[0011]通过所述网页脚本将所述Eval源码数据传输给所述浏览器插件的脚本执行函数;
[0012]通过所述脚本执行函数执行所述Eval源码数据,得到执行结果。
[0013]进一步的,所述调用预先设置的网页注入函数将所述Eval源码数据传递至所述待加载网页的网页脚本的步骤包括:
[0014]通过预先设置的网页注入函数引入所述待加载网页的网页脚本并进行加载;
[0015]响应于所述网页脚本加载的完成,触发所述网页注入函数中的网页注入事件;
[0016]基于所述网页注入事件,将所述Eval源码数据传递至所述网页脚本。
[0017]进一步的,所述通过预先设置的网页注入函数引入所述待加载网页的网页脚本并进行加载的步骤包括:
[0018]通过所述网页注入函数获取脚本标签中的与所述网页脚本对应的路径属性,根据所述路径属性获得所述网页脚本;
[0019]通过所述网页注入函数执行所述网页脚本以进行资源加载。
[0020]进一步的,在所述通过所述脚本执行函数执行所述Eval源码数据,得到执行结果的步骤之前还包括:
[0021]调用所述浏览器插件的标签获取函数获取所述待加载网页的标签页信息,从所述标签页信息中获取到标签标识;
[0022]通过所述插件后台将所述标签标识传给所述浏览器插件的脚本执行函数。
[0023]进一步的,所述通过所述脚本执行函数执行所述Eval源码数据,得到执行结果的步骤包括:
[0024]调用所述脚本执行函数根据所述标签标识获取待加载网页的网页网址;
[0025]通过所述网页注入函数,根据所述网页网址将所述Eval源码数据注入所述待加载网页;
[0026]调用所述脚本执行函数执行所述Eval源码数据,得到执行结果。
[0027]进一步的,所述将所述网页注入执行脚本发送给浏览器插件的步骤包括:
[0028]使用所述网页注入运行函数调用浏览器消息传递函数,将所述网页注入执行脚本发送给所述浏览器插件。
[0029]为了解决上述技术问题,本申请实施例还提供一种基于浏览器插件的Eval函数执行装置,采用了如下所述的技术方案:
[0030]配置模块,用于获取网页注入脚本,在所述网页注入脚本中配置网页注入运行函数;
[0031]获取模块,用于调用所述网页注入运行函数获取Eval源码数据,得到网页注入执行脚本,并将所述网页注入执行脚本传送给浏览器插件;
[0032]执行模块,用于通过所述浏览器插件向待加载网页引入所述网页注入执行脚本,并执行所述网页注入执行脚本中的所述Eval源码数据,得到执行结果。
[0033]为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
[0034]该计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如上所述的基于浏览器插件的Eval函数执行方法的步骤。
[0035]为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
[0036]所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上所述的基于浏览器插件的Eval函数执行方法的步骤。
[0037]与现有技术相比,本申请实施例主要有以下有益效果:
[0038]本申请通过获取网页注入脚本,在网页注入脚本中配置网页注入运行函数;调用
网页注入运行函数获取Eval源码数据,得到网页注入执行脚本,并将网页注入执行脚本传送给浏览器插件;通过浏览器插件向待加载网页引入所述网页注入执行脚本,并执行网页注入执行脚本中的Eval源码数据,得到执行结果;本申请通过网页注入脚本中配置的网页注入运行函数调用Eval源码数据,得到网页注入执行脚本,基于浏览器插件向待加载网页引入网页注入执行脚本并执行,可以使得浏览器插件在不同的扩展规范下执行Eval函数,实现Eval函数的兼容性。
附图说明
[0039]为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0040]图1是本申请可以应用于其中的示例性系统架构图;
[0041]图2是根据本申请的基于浏览器插件的Eval函数执行方法的一个实施例的流程图;
[0042]图3是图2中步骤S203的一种具体实施方式的流程图;
[0043]图4是根据本申请的基于浏览器插件的Eval函数执行装置的一个实施例的结构示意图;
[0044]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于浏览器插件的Eval函数执行方法,其特征在于,包括下述步骤:获取网页注入脚本,在所述网页注入脚本中配置网页注入运行函数;调用所述网页注入运行函数获取Eval源码数据,得到网页注入执行脚本,并将所述网页注入执行脚本传送给浏览器插件;通过所述浏览器插件向待加载网页引入所述网页注入执行脚本,并执行所述网页注入执行脚本中的所述Eval源码数据,得到执行结果。2.根据权利要求1所述的基于浏览器插件的Eval函数执行方法,其特征在于,所述执行所述网页注入执行脚本中的所述Eval源码数据,得到执行结果的步骤包括:通过所述浏览器插件的插件后台接收所述网页注入执行脚本中的所述Eval源码数据,并调用预先设置的网页注入函数将所述Eval源码数据传递至所述待加载网页的网页脚本;通过所述网页脚本将所述Eval源码数据传输给所述浏览器插件的脚本执行函数;通过所述脚本执行函数执行所述Eval源码数据,得到执行结果。3.根据权利要求2所述的基于浏览器插件的Eval函数执行方法,其特征在于,所述调用预先设置的网页注入函数将所述Eval源码数据传递至所述待加载网页的网页脚本的步骤包括:通过预先设置的网页注入函数引入所述待加载网页的网页脚本并进行加载;响应于所述网页脚本加载的完成,触发所述网页注入函数中的网页注入事件;基于所述网页注入事件,将所述Eval源码数据传递至所述网页脚本。4.根据权利要求3所述的基于浏览器插件的Eval函数执行方法,其特征在于,所述通过预先设置的网页注入函数引入所述待加载网页的网页脚本并进行加载的步骤包括:通过所述网页注入函数获取脚本标签中的与所述网页脚本对应的路径属性,根据所述路径属性获得所述网页脚本;通过所述网页注入函数执行所述网页脚本以进行资源加载。5.根据权利要求2所述的基于浏览器插件的Eval函数执行方法,其特征在于,在所述通过所述脚本执行函数执行所述Ev...

【专利技术属性】
技术研发人员:王颖奇冯斌吕宗远
申请(专利权)人:深圳复临科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1