一种页面通信方法、系统、设备及可读存储介质与流程

文档序号:20510976发布日期:2020-04-24 18:31阅读:114来源:国知局
一种页面通信方法、系统、设备及可读存储介质与流程

本申请涉及计算机通信技术领域,特别涉及一种页面通信方法、系统、设备及可读存储介质。



背景技术:

目前,在手机应用中,同一个浏览器中的不同页面可以相互通信,但不同浏览器中的页面是隔离状态,无法通信,导致手机应用无法灵活扩展。因此,如何使页面跨浏览器进行通信,是本领域技术人员需要解决的问题。



技术实现要素:

有鉴于此,本申请的目的在于提供一种页面通信方法、系统、设备及可读存储介质,以实现页面跨浏览器进行通信。其具体方案如下:

第一方面,本申请提供了一种页面通信方法,应用于手机客户端,包括:

若第一页面中的第一监听器监听到所述第一页面生成的目标消息,则所述第一监听器将所述目标消息发送至广播装置;

所述广播装置将所述目标消息转发至第二页面中的第二监听器,以使所述第二页面通过所述第二监听器获得所述目标消息,实现所述第一页面和所述第二页面的通信;

其中,所述第一页面和所述第二页面为不同的浏览器页面。

优选地,所述广播装置将所述目标消息转发至第二页面中的第二监听器之前,还包括:

所述广播装置查询已注册监听器,并将查询到的已注册监听器确定为所述第二监听器。

优选地,所述广播装置将所述目标消息转发至第二页面中的第二监听器,包括:

若所述第二监听器为多个,则所述广播装置将所述目标消息转发至多个所述第二监听器。

优选地,所述第二页面通过所述第二监听器获得所述目标消息之后,还包括:

所述第二页面解析所述目标消息,获得消息内容;

根据所述消息内容生成应答消息,并返回所述应答消息。

优选地,所述浏览器页面为浏览器容器页面。

第二方面,本申请提供了一种页面通信方法,应用于手机客户端,包括:

若第一页面中的第一监听器监听到所述第一页面生成的目标消息,则所述第一监听器将所述目标消息发送至广播装置;

所述广播装置将所述目标消息转发至第二页面中的第二监听器,以使所述第二页面通过所述第二监听器获得所述目标消息,实现所述第一页面和所述第二页面的通信;

其中,所述第一页面为浏览器页面,所述第二页面为原生页面。

第三方面,本申请提供了一种页面通信系统,应用于手机客户端,包括:

第一监听器,用于监听第一页面生成的目标消息,若监听到所述目标消息,则将所述目标消息发送至广播装置;

所述广播装置,用于将所述目标消息转发至第二页面中的第二监听器;

所述第二监听器,用于将所述目标消息传输至所述第二页面,以使所述第二页面获得所述目标消息,实现所述第一页面和所述第二页面的通信;

其中,所述第一页面和所述第二页面为不同的浏览器页面。

优选地,所述广播装置具体用于:

查询已注册监听器,并将查询到的已注册监听器确定为所述第二监听器。

优选地,还包括:

第三监听器,用于监听原生页面生成的消息,若监听到所述消息,则将所述消息发送至广播装置,以使所述广播装置将所述广播装置转发至所述第一监听器和所述第二监听器。

第四方面,本申请提供了一种页面通信设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序,以实现前述公开的页面通信方法。

第五方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的页面通信方法。

通过以上方案可知,本申请提供了一种页面通信方法,应用于手机客户端,包括:若第一页面中的第一监听器监听到所述第一页面生成的目标消息,则所述第一监听器将所述目标消息发送至广播装置;所述广播装置将所述目标消息转发至第二页面中的第二监听器,以使所述第二页面通过所述第二监听器获得所述目标消息,实现所述第一页面和所述第二页面的通信;其中,所述第一页面和所述第二页面为不同的浏览器页面。

可见,在手机客户端的不同的浏览器页面中分别设置监听器,这样监听器便可监听到本浏览器页面的消息,同时使这些监听器被同一个广播装置控制。若某一监听器监听到本浏览器页面内的消息,则可以将该消息发送至广播装置,进而广播装置可以将该消息转发至其他浏览器页面中的监听器,从而实现不同浏览器页面的通信,也就是实现了跨浏览器的页面通信,提高了手机应用开发的灵活性和可扩展性。

相应地,本申请提供的一种页面通信系统、设备及可读存储介质,也同样具有上述技术效果。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请公开的第一种页面通信方法流程图;

图2为本申请公开的一种实现跨页面通信的流程示意图;

图3为本申请公开的一种页面通信系统示意图;

图4为本申请公开的另一种页面通信系统示意图;

图5为本申请公开的一种页面通信设备示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

目前,手机应用中的同一个浏览器中的不同页面可以相互通信,但不同浏览器中的页面是隔离状态,无法通信,导致手机应用无法灵活扩展。为此,本申请提供了一种页面通信方案,能够实现页面跨浏览器通信,提高手机应用开发的灵活性和可扩展性。

参见图1所示,本申请实施例公开了一种页面通信方法,应用于手机客户端,包括:

s101、第一页面中的第一监听器监听到第一页面生成的目标消息;

s102、第一监听器将目标消息发送至广播装置;

在一种具体实施方式中,广播装置将目标消息转发至第二页面中的第二监听器之前,还包括:广播装置查询已注册监听器,并将查询到的已注册监听器确定为第二监听器。

在一种具体实施方式中,广播装置将目标消息转发至第二页面中的第二监听器,包括:若第二监听器为多个,则广播装置将目标消息转发至多个第二监听器。

s103、广播装置将目标消息转发至第二页面中的第二监听器;

s104、第二页面通过第二监听器获得目标消息,实现第一页面和第二页面的通信。

需要说明的是,第一页面和第二页面为不同的浏览器页面。例如:第一页面为浏览器a中的页面,而第二页面为浏览器b中的页面。

在一种具体实施方式中,第二页面通过第二监听器获得目标消息之后,还包括:第二页面解析目标消息,获得消息内容;根据消息内容生成应答消息,并返回应答消息。目标消息可以是用户在第一页面内进行操作时生成的消息,也可以是第一页面自动生成的消息。

在本实施例中,浏览器页面为浏览器容器页面。本实施例应用于手机客户端,而该手机客户端基于容器技术开发。因此手机客户端中的各个浏览器的页面称为浏览器容器页面。

可见,本申请实施例在不同的浏览器页面中分别设置监听器,这样监听器便可监听到本浏览器页面的消息,同时使这些监听器被同一个广播装置控制。若某一监听器监听到本浏览器页面内的消息,则可以将该消息发送至广播装置,进而广播装置可以将该消息转发至其他浏览器页面中的监听器,从而实现不同浏览器页面的通信,提高了手机应用开发的灵活性和可扩展性。

在一种具体实施方式中,一种页面通信方法,应用于手机客户端,包括:若第一页面中的第一监听器监听到所述第一页面生成的目标消息,则所述第一监听器将所述目标消息发送至广播装置;所述广播装置将所述目标消息转发至第二页面中的第二监听器,以使所述第二页面通过所述第二监听器获得所述目标消息,实现所述第一页面和所述第二页面的通信;其中,所述第一页面为浏览器页面,所述第二页面为原生页面。

其中,第一页面和第二页面还可以是手机应用的原生页面,那么就可以实现不同原生页面之间的通信。当然,也可以是第一页面为浏览器页面,第二页面为原生页面,浏览器页面和原生页面均是手机客户端中的页面,那么也就实现了手机客户端中的浏览器页面和原生页面的通信。

按照本申请提供的方法可实现如下页面通信方案。

在手机客户端中的不同的浏览器页面中分别设置监听器,同时使这些监听器被同一个广播装置控制。当一个浏览器页面需要与另一个浏览器页面进行通信时,先向广播装置进行监听器注册,当页面内有消息要发布时,则该页面内的监听器可监听到该消息,并可以将此消息发送给广播装置,进而广播装置再将此消息广播给所有已注册的监听器,从而实现跨浏览器的页面通信。

例如:需要通信的浏览器页面a和浏览器页面b内均设有监听器,且两个监听器均已在广播装置中注册。用户打开浏览器页面b,在浏览器页面b进行一些操作后,浏览器页面b需要将一些消息发给浏览器页面a,那么浏览器页面b内的监听器b将此消息发给广播装置;广播装置将消息广播给所有已注册的监听器;这样浏览器页面a便可通过监听器a接收到消息。

请参见图2,本实施例的实现步骤包括:创建监听器广播装置(即广播装置),监听器广播装置用于保存已注册的监听器,并对监听器进行消息广播;创建浏览器容器,浏览器容器(即利用容器技术开发的浏览器)用于装载页面a;创建浏览器容器,浏览器容器用于装载页面b。页面a和页面b中均设有已在监听器广播装置中注册的监听器。

可见,本实施例以浏览器容器进行手机应用的开发,提供了一种低成本的跨页面通信方法,实现了消息收发的解耦,还可以保持原有的浏览器容器开发架构不变。按照本实施例在开发手机客户端时,在手机客户端中有多个浏览器实例(一个浏览器可看作一个浏览器实例)的情况下,可以实现跨浏览器实例的通信。其中,可直接使用传统的web开发方法进行开发手机客户端,并且浏览器页面可以在ios系统和android系统间复用。并且原生页面可以和浏览器页面进行通信,使得页面之间的数据传输更为方便。

下面对本申请实施例提供的一种页面通信系统进行介绍,下文描述的一种页面通信系统与上文描述的一种页面通信方法可以相互参照。

参见图3所示,本申请实施例公开了一种页面通信系统,应用于手机客户端,包括:

第一监听器301,用于监听第一页面生成的目标消息,若监听到目标消息,则将目标消息发送至广播装置;

广播装置302,用于将目标消息转发至第二页面中的第二监听器;

第二监听器303,用于将目标消息传输至第二页面,以使第二页面获得目标消息,实现第一页面和第二页面的通信;

其中,第一页面和第二页面为不同的浏览器页面。

在一种具体实施方式中,广播装置具体用于:

查询已注册监听器,并将查询到的已注册监听器确定为第二监听器。

在一种具体实施方式中,还包括:

第三监听器,用于监听原生页面生成的消息,若监听到消息,则将消息发送至广播装置,以使广播装置将广播装置转发至第一监听器和第二监听器。

在一种具体实施方式中,广播装置具体用于:

将目标消息转发至第三监听器,实现浏览器页面和原生页面之间的通信。

参见图4所示,本申请实施例公开了另一种页面通信系统,包括:广播装置和多个监听器,其中:多个监听器如图4中的监听器1、监听器2……监听器n,n为正整数。

广播装置用于接收各个监听器发送的消息并进行广播;

监听器,用于监听自身页面内的消息,同时接收广播装置广播的消息。

其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

可见,本实施例提供了一种页面通信系统,该系统实现了不同浏览器页面的通信,提高了手机应用开发的灵活性和可扩展性。

下面对本申请实施例提供的一种页面通信设备进行介绍,下文描述的一种页面通信设备与上文描述的一种页面通信方法及装置可以相互参照。

参见图5所示,本申请实施例公开了一种页面通信设备,包括:

存储器501,用于保存计算机程序;

处理器502,用于执行所述计算机程序,以实现上述任意实施例公开的方法。

下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种页面通信方法、系统及设备可以相互参照。

一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的页面通信方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。

本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。

需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的可读存储介质中。

本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1