一种浏览器插件实现方法、http应用服务器和浏览器的制造方法

xiaoxiao2021-3-1  163

一种浏览器插件实现方法、http应用服务器和浏览器的制造方法
【技术领域】
[0001 ]本申请涉及计算机应用技术领域,更具体地说,涉及一种浏览器插件实现方法、 HTTP应用服务器和浏览器。
【背景技术】
[0002] 目前主流的浏览器,如Microsoft Internet Explorer、Google Chrome、Mozilla Firef〇X、360安全浏览器等,在需要使用数字签名、网银支付等独立于浏览器以外的特定功 能时,需要用到浏览器插件技术来实现。目前常见的浏览器插件技术主要是Microsoft的 ActiveX/COM、Netscape NPAPI、Google Chrome扩展等。这些插件全部安装于浏览器中,这 些插件一旦在浏览器中安装完成后,即可访问浏览器中的所有数据、密码和浏览的网站,给 用户带来严重的安全隐患。
[0003] 如何提高用户在使用插件时的安全性,成为本领域技术人员亟待解决的技术问题 之一。

【发明内容】

[0004] 有鉴于此,本申请提供一种浏览器插件实现方法、HTTP应用服务器和浏览器,以解 决现有技术中在使用插件时存在严重的安全隐患的问题。
[0005] 为了实现上述目的,现提出的方案如下:
[0006] 一种浏览器插件实现方法,应用于HTTP应用服务器中,包括:
[0007] 获取浏览器下发的POST数据请求,所述POST数据请求为浏览器通过预设应用程序 下发的请求指令;
[0008] 对所述POST数据请求进行解析,获得所述POST数据请求包含的功能名称标识和参 数信息;
[0009] 调取预设数据库中与所述功能名称标识相匹配的插件作为目标插件,将所述参数 信息发送至所述目标插件,所述数据库中包含有多个用户预安装的插件;
[0010] 获取并将所述目标插件依据所述参数信息生成的响应信息上传至浏览器。
[0011] 优选的,上述浏览器插件实现方法中,所述获取浏览器下发的POST数据请求,所述 POST数据请求为浏览器通过预设应用程序下发的请求指令,包括:
[0012] 获取浏览器下发的采用JS0N封装技术封装过的POST数据请求,所述POST数据请求 为浏览器通过预设应用程序下发的、采用JS0N封装技术封装过的请求指令。
[0013] -种浏览器插件实现方法,应用于浏览器中,包括:
[0014] 依据用户操作访问Web应用服务器,所述应用服务器用于存储含有预设脚本的页 面,并提供来自浏览器的请求的服务;
[0015] 运行当前访问的所述含有预设脚本的文件页面,依据预设的应用程序生成POST数 据请求;
[0016] 将所述POST数据请求发送至HTTP应用服务器;
[0017] 获取所述HTTP应用服务器依据所述POST数据请求生成的响应信息;
[0018] 将所述响应信息上传至所述含有预设脚本的页面。
[0019]优选的,上述浏览器插件实现方法中,所述预设应用程序为AJAX应用程序。
[0020] 优选的,上述浏览器插件实现方法中,所述预设应用程序为Websocket应用程序。 [0021] 一种HTTP应用服务器,包括:
[0022]请求采集单元,用于获取浏览器下发的POST数据请求,所述POST数据请求为浏览 器通过预设应用程序下发的请求指令;
[0023]数据解析单元,用于对获取到的所述POST数据请求进行解析,获得所述POST数据 请求包含的功能名称标识和参数信息;
[0024] 插件调取单元,用于调取数据库中与所述功能名称标识相匹配的插件作为目标插 件,将所述参数信息发送至所述目标插件,所述数据库设置于所述HTTP应用服务器中,包含 有多个用户预安装的插件;
[0025] 响应采集单元,用于获取并将所述目标插件依据所述参数信息生成的响应信息上 传至浏览器。
[0026] 优选的,上述HTTP应用服务器中,所述响应采集单元,包括:
[0027]子采集单元,用于获取所述目标插件依据所述参数信息生成的响应信息;
[0028]封装单元,用于将所述响应信息采用JS0N封装技术封装后上传至所述浏览器。
[0029] -种浏览器,包括:
[0030] 访问模块,用于依据用户操作访问Web应用服务器,所述应用服务器用于存储含有 预设脚本的页面,并提供来自浏览器的请求的服务;
[0031] 数据请求生成模块,用于运行当前访问的所述含有预设脚本的文件页面,依据预 设的应用程序生成POST数据请求,将所述POST数据请求发送至HTTP应用服务器;
[0032]响应采集单元,用于获取所述HTTP应用服务器依据所述POST数据请求生成的响应 信息,将所述响应信息上传至所述含有预设脚本的页面。
[0033] 优选的,上述浏览器中,所述预设应用程序为AJAX应用程序。
[0034] 优选的,上述浏览器中,所述预设应用程序为Websocket应用程序。
[0035] 从上述的技术方案可以看出,本申请公开的上述方法,所述目标插件在进行响应 时是在所述Http应用服务器中运行并响应的,并且由于所述Http应用服务器是独立于所述 浏览器而存在的,因此,所述目标插件无需安装于所述浏览器上,因此所述插件在运行时, 并不能对能对浏览器中的数据、密码和浏览的网站进行访问,因此提高了用户在使用插件 时的安全性。
【附图说明】
[0036] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据 提供的附图获得其他的附图。
[0037] 图1为本申请实施例提供的一种浏览器插件实现方法的流程图;
[0038] 图2为本申请另一实施例提供的一种浏览器插件实现方法的流程图;
[0039] 图3为本申请实施例提供的一种Http应用服务器的结构示意图;
[0040] 图4为本申请实施例提供的一种浏览器的结构示意图。
【具体实施方式】
[0041] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0042] 为了提高用户在使用插件时的安全性,本申请公开了一种浏览器插件实现方法, 该方法应用于Http应用服务器中,所述HttP应用服务器是安装在用户计算机端的一个应用 程序,所述Http应用服务器基于HTTP协议,该协议是一个属于应用层的面向对象的协议,由 于其简捷、快速的方式,适用于分布式超媒体信息系统。其内设置有用户预安装的Http应用 服务程序,所述Http应用服务程序是可以向发出请求的浏览器提供服务的程序。当Http应 用服务器接收到一个HTTP请求(request)后,会返回一个HTTP响应(response)。参见图1,本 申请公开的浏览器插件实现方法包括:
[0043] 步骤S101:获取浏览器下发的POST数据请求,所述POST数据请求为浏览器通过预 设应用程序下发的请求指令;
[0044] 步骤S102:对所述POST数据请求进行解析,获得所述POST数据请求包含的功能名 称标识和参数信息;
[0045] 步骤S103:调取预设数据库中与所述功能名称标识相匹配的插件作为目标插件, 将所述参数信息发送至所述目标插件,所述数据库中包含有多个用户预安装的插件;
[0046] 步骤S104:获取并将所述目标插件依据所述参数信息生成的响应信息上传至浏览 器。
[0047] 参见本申请上述实施例公开的方法,可见,在上述方法中,所述目标插件在进行响 应时是在所述Http应用服务器中运行并响应的,可见,所述目标插件无需安装于所述浏览 器上,因此其并不能对能对浏览器中的数据、密码和浏览的网站进行访问,因此提高了用户 在使用插件时的安全性。
[0048]可以理解的是,本申请上述实施例中,所述POST数据请求可以指的是任意一种需 要插件运行并相应的数据请求,例如,其可以为数字签名认证、支付请求认证等请求。
[0049]可以理解的是,为了方便所述Http应用服务器与所述浏览器之间的数据交互,两 者之间用于交互的数据需要进行数据封装,因此,本申请上述实施例公开的上述方法中,获 取并将所述目标插件依据所述参数信息生成的响应信息上传至浏览器,包括:采用预设的 封装形式对所述由所述目标插件获取到的响应信息进行封装,将封装后的响应信息上传至 所述浏览器。其中所述预设的封装形式可以指的是JS0N封装。即本申请上述实施例中,所述 Http应用服务器与所述浏览器之间的交互数据为采用以JS0N封装技术封装后的数据。此 时,所述Http应用服务器获取到的POST数据请求的形式可以为:
[0051]其中,上述指令中,所述FunctionName指的是目标插件的功能名称标识,所述 Params指的时目标插件对应的参数信息(插件功能对应的参数)。具体取值可如下:
[0053]当然,为了方便提醒用户所述目标插件的形影结果,所述HTTP应用服务器接收到 所述POST数据请求后,对所述POST数据请求解析得到目标插件的功能接口(功能名称标识) 与参数列表(参数信息),调用相应的目标插件进行数据处理,把处理响应信息拼装成JS0N 回应给浏览器,所述响应信息可采用JS0N封装格式进行封装,例如:
[0054] 当所述目标插件操作成功时,所述采用JS0N封装格式封装后的响应信息可以为: {''function〃:〃SOF_GetUserList〃,''array 〃:〃array"}
[0055] 当所述目标插件操作失败时,所述采用JS0N封装格式封装后的响应信息可以为: {''function〃:〃S0F_GetUserList〃,''return〃: 0}
[0056] 对应于上述实施例公开的上述应用于Http应用服务器中的浏览器插件实现方法, 本申请还公开了另外一种应用于浏览器的浏览器插件实现方法,参见图2,该方法包括: [0057]步骤S201:依据用户操作访问Web应用服务器,所述应用服务器用于存储含有预设 脚本的页面,并提供来自浏览器的请求的服务;
[0058]步骤S202:运行当前访问的所述含有预设脚本的文件页面,依据预设的应用程序 生成POST数据请求;
[00 59] 步骤S203:将所述POST数据请求发送至HTTP应用服务器;
[0060]步骤S204:获取所述HTTP应用服务器依据所述POST数据请求生成的响应信息,将 所述响应信息上传至所述含有预设脚本的页面。
[0061]参见本申请实施例公开的浏览器插件实现方法可见,当需要应用目标插件时,并 不需要在所述浏览器上运行所述目标插件,而是通过所述目标应用服务器运行,因此保证 了所述目标插件不会对所述浏览器中的数据信息进行访问,因此提高了用户在使用所述目 标插件时的安全性。
[0062]可以理解的是,在Web应用服务器中存储的页面信息通常采用预设格式的脚本信 息,通过所述具有预设脚本信息的页面信息提供浏览器服务的服务,所述浏览器负责运行 含有所述预设脚本信息的页面,浏览器与所述远程Web应用服务器通过HTTP协议来进行交 互。其中,当前最为常用的脚本格式为AJAX和Websocket,因此,针对于,本申请上方法中,所 述预设的应用程序可以为用于对AJAX脚本信息进行处理的AJAX应用程序或用于对 Websocket脚本信息进行处理的Websocket应用程序。
[0063]本申请上述实施例公开的浏览器插件实现方法通过设置在用户计算机上的Http 服务器与运行于浏览器内的Ajax或Websock应用进行数据交互,从而代替了现有控件技术, 保证用户安全。
[0064] 可以理解的是,将本申请上述应用于HTTP应用服务器的浏览器插件实现方法和应 用于浏览器的种浏览器插件实现方法相结合后,本申请还可以得到一种完整相应的种浏览 器插件实现方法,包括:
[0065]步骤S201:依据用户操作访问Web应用服务器,所述应用服务器用于存储含有预设 脚本的页面,并提供来自浏览器的请求的服务;
[0066]步骤S202:运行当前访问的所述含有预设脚本的文件页面,依据预设的应用程序 生成POST数据请求;
[0067] 步骤S203:将所述POST数据请求发送至HTTP应用服务器;
[0068] 步骤S101:获取浏览器下发的POST数据请求,所述POST数据请求为浏览器通过预 设应用程序下发的请求指令;
[0069]步骤S102:对所述POST数据请求进行解析,获得所述POST数据请求包含的功能名 称标识和参数信息;
[0070] 步骤S103:调取预设数据库中与所述功能名称标识相匹配的插件作为目标插件, 将所述参数信息发送至所述目标插件,所述数据库中包含有多个用户预安装的插件;
[0071] 步骤S104:获取并将所述目标插件依据所述参数信息生成的响应信息上传至浏览 器;
[0072]步骤S204:获取所述HTTP应用服务器依据所述POST数据请求生成的响应信息,将 所述响应信息上传至所述含有预设脚本的页面。
[0073] 对应于上述应用于Http应用服务器中的浏览器插件实现方法,本申请还公开了一 种Http应用服务器,参见图3,该Http应用服务器包括:
[0074]请求采集单元10,用于获取浏览器下发的POST数据请求,所述POST数据请求为浏 览器通过预设应用程序下发的请求指令;
[0075]数据解析单元20,用于对获取到的所述POST数据请求进行解析,获得所述POST数 据请求包含的功能名称标识和参数信息;
[0076] 插件调取单元30,用于调取数据库中与所述功能名称标识相匹配的插件作为目标 插件,将所述参数信息发送至所述目标插件,所述数据库设置于所述HTTP应用服务器中,包 含有多个用户预安装的插件;
[0077] 响应采集单元40,用于获取并将所述目标插件依据所述参数信息生成的响应信息 上传至浏览器。
[0078]与上述方法相对应,所述响应采集单元40可以包括:
[0079]子采集单元41,用于获取所述目标插件依据所述参数信息生成的响应信息;
[0080] 封装单元42,用于将所述响应信息采用JS0N封装技术封装后上传至所述浏览器。
[0081] 可以理解的是,对应于上述应用于浏览器的浏览器插件实现方法,本申请还公开 了一种浏览器,参见图4,包括:
[0082]访问模块50,用于依据用户操作访问Web应用服务器,所述应用服务器用于存储含 有预设脚本的页面,并提供来自浏览器的请求的服务;
[0083]数据请求生成模块60,用于运行当前访问的所述含有预设脚本的文件页面,依据 预设的应用程序生成POST数据请求,将所述POST数据请求发送至HTTP应用服务器;
[0084]响应采集单元70,用于获取所述HTTP应用服务器依据所述POST数据请求生成的响 应信息,将所述响应信息上传至所述含有预设脚本的页面。
[0085] 对应于上述方法,所述浏览器中的所述预设应用程序为AJAX应用程序或AJAX应用 程序。
[0086]需要说明的是,本申请上述实施例公开的方法与方法之间、装置与装置之间、方法 与装置之间的技术特征可相互借鉴。
[0087]最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作 之间存在任何这种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体意 在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那 些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者 设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排 除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0088] 本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他 实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0089] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。 对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的 一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明 将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一 致的最宽的范围。
【主权项】
1. 一种浏览器插件实现方法,其特征在于,应用于HTTP应用服务器中,包括: 获取浏览器下发的POST数据请求,所述POST数据请求为浏览器通过预设应用程序下发 的请求指令; 对所述POST数据请求进行解析,获得所述POST数据请求包含的功能名称标识和参数信 息; 调取预设数据库中与所述功能名称标识相匹配的插件作为目标插件,将所述参数信息 发送至所述目标插件,所述数据库中包含有多个用户预安装的插件; 获取并将所述目标插件依据所述参数信息生成的响应信息上传至浏览器。2. 根据权利要求1所述的浏览器插件实现方法,其特征在于,所述获取浏览器下发的 POST数据请求,所述POST数据请求为浏览器通过预设应用程序下发的请求指令,包括: 获取浏览器下发的采用JS0N封装技术封装过的POST数据请求,所述POST数据请求为浏 览器通过预设应用程序下发的、采用JS0N封装技术封装过的请求指令。3. -种浏览器插件实现方法,其特征在于,应用于浏览器中,包括: 依据用户操作访问Web应用服务器,所述应用服务器用于存储含有预设脚本的页面,并 提供来自浏览器的请求的服务; 运行当前访问的所述含有预设脚本的文件页面,依据预设的应用程序生成POST数据请 求; 将所述POST数据请求发送至HTTP应用服务器; 获取所述HTTP应用服务器依据所述POST数据请求生成的响应信息; 将所述响应信息上传至所述含有预设脚本的页面。4. 根据权利要求3所述的浏览器插件实现方法,其特征在于,所述预设应用程序为AJAX 应用程序。5. 根据权利要求3所述的浏览器插件实现方法,其特征在于,所述预设应用程序为 Websocket应用程序。6. -种HTTP应用服务器,其特征在于,包括: 请求采集单元,用于获取浏览器下发的POST数据请求,所述POST数据请求为浏览器通 过预设应用程序下发的请求指令; 数据解析单元,用于对获取到的所述POST数据请求进行解析,获得所述POST数据请求 包含的功能名称标识和参数信息; 插件调取单元,用于调取数据库中与所述功能名称标识相匹配的插件作为目标插件, 将所述参数信息发送至所述目标插件,所述数据库设置于所述HTTP应用服务器中,包含有 多个用户预安装的插件; 响应采集单元,用于获取并将所述目标插件依据所述参数信息生成的响应信息上传至 浏览器。7. 根据权利要求6所述的HTTP应用服务器,其特征在于,所述响应采集单元,包括: 子采集单元,用于获取所述目标插件依据所述参数信息生成的响应信息; 封装单元,用于将所述响应信息采用JS0N封装技术封装后上传至所述浏览器。8. -种浏览器,其特征在于,包括: 访问模块,用于依据用户操作访问Web应用服务器,所述应用服务器用于存储含有预设 脚本的页面,并提供来自浏览器的请求的服务; 数据请求生成模块,用于运行当前访问的所述含有预设脚本的文件页面,依据预设的 应用程序生成POST数据请求,将所述POST数据请求发送至HTTP应用服务器; 响应采集单元,用于获取所述HTTP应用服务器依据所述POST数据请求生成的响应信 息,将所述响应信息上传至所述含有预设脚本的页面。9. 根据权利要求8所述的浏览器,其特征在于,所述预设应用程序为AJAX应用程序。10. 根据权利要求8所述的浏览器,其特征在于,所述预设应用程序为Websocket应用程 序。
【专利摘要】一种浏览器插件实现方法、HTTP应用服务器和浏览器,所述方法包括:获取浏览器下发的POST数据请求,所述POST数据请求为浏览器通过预设应用程序下发的请求指令;对所述POST数据请求进行解析,获得所述POST数据请求包含的功能名称标识和参数信息;调取预设数据库中与所述功能名称标识相匹配的插件作为目标插件,将所述参数信息发送至所述目标插件,所述数据库中包含有多个用户预安装的插件;获取并将所述目标插件依据所述参数信息生成的响应信息上传至浏览器。可见,所述目标插件是在所述Http应用服务器中运行并响应的,无需安装于所述浏览器上,因此不能对能对浏览器中的数据进行访问,提高了用户在使用插件时的安全性。
【IPC分类】G06F9/445, H04L29/08
【公开号】CN105487910
【申请号】CN201610044867
【发明人】李刚, 杨利民
【申请人】北京世纪龙脉科技有限公司
【公开日】2016年4月13日
【申请日】2016年1月22日

最新回复(0)