一种脚本注入方法、设备及计算机可读存储介质技术

技术编号:34367920 阅读:18 留言:0更新日期:2022-07-31 09:42
本申请提供了一种脚本注入方法、设备及计算机可读存储介质。其中,脚本注入方法包括:在浏览器的配置文件中配置第一入口文件;将动态注入函数写入第一入口文件,得到第二入口文件;在配置文件配置完成后,获取待注入脚本的第一脚本信息;根据第二入口文件和第一脚本信息,按照动态注入函数提供的脚本注入逻辑,将待注入脚本注入浏览器页面;其中,第一入口文件用于在配置文件的配置过程中,将待注入脚本注入浏览器页面。在本申请中,即使配置文件已被配置完成,用户也可以随时通过第二入口文件,按照其内的动态注入函数所提供的脚本注入逻辑,将待注入脚本注入浏览器页面,从而提升了在浏览器中注入脚本时的动态性。了在浏览器中注入脚本时的动态性。了在浏览器中注入脚本时的动态性。

A script injection method, device and computer readable storage medium

【技术实现步骤摘要】
一种脚本注入方法、设备及计算机可读存储介质


[0001]本申请涉及计算机
,尤其涉及一种脚本注入方法、设备及计算机可读存储介质。

技术介绍

[0002]插件是计算机程序的一种,其通常由遵循预设规范的API(Application Programming Interface,应用程序接口)编写得到,且一般只能运行于指定的系统平台,而不能脱离指定的系统平台单独运行,但是可以同时支持多个系统平台。插件的种类繁多,现以浏览器插件为例,当浏览器安装相关的插件后,浏览器便能够直接调用插件,从而使得浏览器具备插件相应的功能,比如对特定类型的文件进行处理等,以此来提升浏览器功能的丰富程度。
[0003]相关技术中,浏览器具有一个较为重要的配置文件(即mainfest.json),当开发人员对浏览器插件进行开发时,需要在该配置文件中配置众多的权限和脚本(比如JS脚本)信息,以将运行浏览器插件的过程中浏览器所要执行的脚本事先确定好。然而,上述配置文件一旦配置完成,即运行浏览器插件的过程中浏览器所要执行的脚本一旦确定好,用户便无法在运行浏览器插件的过程中向浏览器注入新的脚本,或者删除浏览器原有的脚本,从而导致在浏览器中注入脚本时的动态性较差,这将严重影响用户的使用体验,也降低了用户使用浏览器时的便利性。
[0004]因此,有必要对在浏览器中动态插入脚本的方法进行设计。

技术实现思路

[0005]本申请提供了一种脚本注入方法、设备及计算机可读存储介质,旨在解决相关技术中在浏览器中注入脚本时的动态性较差的问题。
[0006]为了解决上述技术问题,本申请实施例第一方面提供了一种脚本注入方法,包括:
[0007]在浏览器的配置文件中配置第一入口文件;其中,所述第一入口文件用于在所述配置文件的配置过程中,将待注入脚本注入浏览器页面;
[0008]将动态注入函数写入所述第一入口文件,得到第二入口文件;
[0009]在所述配置文件配置完成后,获取所述待注入脚本的第一脚本信息;
[0010]根据所述第二入口文件和所述第一脚本信息,按照所述动态注入函数提供的脚本注入逻辑,将所述待注入脚本注入所述浏览器页面。
[0011]本申请实施例第二方面提供了一种电子设备,包括存储装置和至少一个处理器;所述存储装置用于存储至少一个程序,且当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器执行如本申请实施例第一方面所述的脚本注入方法。
[0012]本申请实施例第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有可执行指令,所述可执行指令被执行时执行如本申请实施例第一方面所述的脚本注入方法。
[0013]从上述描述可知,与相关技术相比,本申请的有益效果在于:
[0014]先在浏览器的配置文件中配置第一入口文件;再将动态注入函数写入第一入口文件,得到第二入口文件;最后在配置文件配置完成后,获取待注入脚本的第一脚本信息,并根据第二入口文件和第一脚本信息,按照动态注入函数提供的脚本注入逻辑,将待注入脚本注入浏览器页面;其中,第一入口文件用于在配置文件的配置过程中,将待注入脚本注入浏览器页面。基于此,可以先在配置文件的配置过程中,通过第一入口文件将待注入脚本注入浏览器页面,此时这些待注入脚本的脚本信息也会被写入配置文件,以此来完成对配置文件的配置;而在配置文件配置完成后,用户仍然可以随时通过第二入口文件,按照其内的动态注入函数提供的脚本注入逻辑,将待注入脚本注入浏览器页面,这就说明动态注入函数提供了“在配置文件配置完成后,将待注入脚本注入浏览器页面”的脚本注入逻辑,从而提升了在浏览器中注入脚本时的动态性,进而提升了用户的使用体验,以及用户使用浏览器时的便利性。
【附图说明】
[0015]为了更清楚地说明相关技术或本申请实施例中的技术方案,下面将对相关技术或本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,而并非是全部实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为本申请实施例提供的脚本注入方法的流程示意图;
[0017]图2为本申请实施例提供的图1中步骤400的流程示意图;
[0018]图3为本申请实施例提供的图2中步骤420的流程示意图;
[0019]图4为本申请实施例提供的图2中步骤430的第一种流程示意图;
[0020]图5为本申请实施例提供的图2中步骤430的第二种流程示意图;
[0021]图6为本申请实施例提供的图2中步骤410的流程示意图;
[0022]图7为本申请实施例提供的图6中步骤412的流程示意图;
[0023]图8为本申请实施例提供的电子设备的模块框图;
[0024]图9为本申请实施例提供的计算机可读存储介质的模块框图。
【具体实施方式】
[0025]为了使本申请的目的、技术方案以及优点更加的明显和易懂,下面将结合本申请实施例以及相应的附图,对本申请进行清楚、完整地描述,其中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。应当理解的是,下面所描述的本申请的各个实施例仅仅用以解释本申请,并不用于限定本申请,也即基于本申请的各个实施例,本领域的普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,下面所描述的本申请的各个实施例中所涉及的技术特征只要彼此之间未构成冲突就可以相互组合。
[0026]相关技术中,浏览器具有一个较为重要的配置文件(即mainfest.json),当开发人员对浏览器插件进行开发时,需要在该配置文件中配置众多的权限和脚本(比如JS脚本)信息,以将运行浏览器插件的过程中浏览器所要执行的脚本事先确定好。然而,上述配置文件
一旦配置完成,即运行浏览器插件的过程中浏览器所要执行的脚本一旦确定好,用户便无法在运行浏览器插件的过程中向浏览器注入新的脚本,或者删除浏览器原有的脚本,从而导致在浏览器中注入脚本时的动态性较差,这将严重影响用户的使用体验,也降低了用户使用浏览器时的便利性。为此,本申请实施例提供了一种脚本注入方法。需要说明的是,在下文中,“待注入脚本”指的是当前时刻下,浏览器中不存在的脚本;“待删除脚本”指的是当前时刻下,浏览器中已存在的脚本。
[0027]请参阅图1,图1为本申请实施例提供的脚本注入方法的流程示意图;从图1中可以看出,本申请实施例提供的脚本注入方法包括如下步骤100至400。
[0028]步骤100、在浏览器的配置文件中配置第一入口文件。
[0029]在本申请实施例中,如果想要提升在浏览器中注入脚本时的动态性,那么需要先在浏览器的配置文件中配置第一入口文件;其中,配置文件可以包括但不限于mainfest.json,第一入口文件可以包括但不限于main.js。具体地,第一入口文件本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种脚本注入方法,其特征在于,包括:在浏览器的配置文件中配置第一入口文件;其中,所述第一入口文件用于在所述配置文件的配置过程中,将待注入脚本注入浏览器页面;将动态注入函数写入所述第一入口文件,得到第二入口文件;在所述配置文件配置完成后,获取所述待注入脚本的第一脚本信息;根据所述第二入口文件和所述第一脚本信息,按照所述动态注入函数提供的脚本注入逻辑,将所述待注入脚本注入所述浏览器页面。2.如权利要求1所述的脚本注入方法,其特征在于,所述根据所述第二入口文件和所述第一脚本信息,按照所述动态注入函数提供的脚本注入逻辑,将所述待注入脚本注入所述浏览器页面,包括:根据所述第一脚本信息,判断所述待注入脚本是否安全;若所述待注入脚本安全,则参照所述第一脚本信息,通过所述第二入口文件,按照所述动态注入函数提供的脚本注入逻辑,将所述待注入脚本注入所述浏览器页面;若所述待注入脚本危险,则参照所述第一脚本信息,从预设的脚本信息库中选择相应的第二脚本信息;其中,所述脚本信息库用于存储多个安全的所述第二脚本信息;参照所选择的所述第二脚本信息,通过所述第二入口文件,按照所述动态注入函数提供的脚本注入逻辑,将所选择的所述第二脚本信息相应的脚本注入所述浏览器页面;其中,所选择的所述第二脚本信息相应的脚本所具有的功能与所述待注入脚本相同或相似。3.如权利要求2所述的脚本注入方法,其特征在于,所述第一脚本信息包括url地址;所述参照所述第一脚本信息,通过所述第二入口文件,按照所述动态注入函数提供的脚本注入逻辑,将所述待注入脚本注入所述浏览器页面,包括:创建script标签;将所述script标签的src设置为所述url地址;将所述script标签添加至所述浏览器页面,开始注入所述待注入脚本;在所述待注入脚本注入完成后,删除所述script标签。4.如权利要求2所述的脚本注入方法,其特征在于,所述脚本信息库还用于存储分别与多个所述第二脚本信息相应的多个第二功能信息;所述参照所述第一脚本信息,从预设的脚本信息库中选择相应的第二脚本信息,包括:根据所述第一脚本信息,确定所述待注入脚本的第一功能信息;参照所述第一功能信息,从预设的脚本信息库中选择相应的第二脚本信息;其中,所选择的所述第二脚本信息相应的所述第二功能信息与所述第一功能信息相同。5.如权利要求4所述的脚本注入方法,其特征在于,所述参照所述第一脚本信息,从预设的脚本信息库中...

【专利技术属性】
技术研发人员:董燕万振华王颉李华
申请(专利权)人:深圳开源互联网安全技术有限公司
类型:发明
国别省市:

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

1