页面窗口通信方法及装置制造方法及图纸

技术编号:20242521 阅读:27 留言:0更新日期:2019-01-29 23:23
本公开提出一种页面窗口通信方法及装置,属于计算机应用技术领域。其中,所述方法包括:第一页面利用待通信的第二页面参数,调用页面打开函数,以获取第二页面的窗口对象;第一页面在第二页面的窗口对象中注册页面窗口加载回调函数;第一页面在检测到加载回调函数被调用时,向第二页面发送通信注册请求,通信注册请求中包含第一校验码及第一页面的页面参数,以使第二页面在确定第一校验码合法时,根据第一页面的页面参数,获取第一页面的窗口对象。由此,通过这种页面窗口通信方法,实现了页面窗口间的双向通信,改善了用户体验。

【技术实现步骤摘要】
页面窗口通信方法及装置
本公开涉及计算机应用
,尤其涉及一种页面窗口通信方法及装置。
技术介绍
随着互联网技术及网页程序的不断发展,互联网的应用范围不断扩大,人们对互联网的需求也越来越高级和复杂。例如,在浏览器应用中,人们希望网页程序能够实现多屏操作的需求,而实现这一需求,就需要实现多个页面窗口间的相互通信。相关技术中,浏览器提供的window.postMessage方法,可以实现一个页面窗口向另一个页面窗口传递消息。但是上述方法,只能实现一个页面窗口与另一个页面窗口的单向通信,无法实现页面窗口间的双向通信。
技术实现思路
本公开提出的页面窗口通信方法、装置、电子设备及存储介质,用于解决相关技术中,现有通过调用window.postMessage方法实现页面窗口间的通信的方法,无法实现页面窗口间的双向通信的问题。本公开一方面实施例提出的页面窗口通信方法,包括:第一页面利用待通信的第二页面参数,调用页面打开函数,以获取所述第二页面的窗口对象;所述第一页面在所述第二页面的窗口对象中注册页面窗口加载回调函数;所述第一页面在检测到所述加载回调函数被调用时,向所述第二页面发送通信注册请求,所述通信注册请求中包含第一校验码及所述第一页面的页面参数,以使所述第二页面在确定所述第一校验码合法时,根据所述第一页面的页面参数,获取所述第一页面的窗口对象。本公开另一方面实施例提出的页面窗口通信方法,包括:第二页面在加载过程中注册消息接收回调函数;所述第二页面在确定加载完成时,调用窗口加载回调函数,以使注册所述窗口加载回调函数的第一页面在检测到所述窗口加载回调函数被调用时,向所述第二页面发送通信注册请求;所述第二页面在检测到所述消息接收回调函数被调用时,获取所述消息接收回调函数的调用参数;所述第二页面判断所述调用参数中的第一校验码是否合法;若合法,则所述第二页面根据所述调用参数中的第一页面参数,获取第一页面的窗口对象。本公开再一方面实施例提出的页面窗口通信装置,包括:获取模块,用于第一页面利用待通信的第二页面参数,调用页面打开函数,以获取所述第二页面的窗口对象;注册模块,用于所述第一页面在所述第二页面的窗口对象中注册页面窗口加载回调函数;发送模块,用于所述第一页面在检测到所述加载回调函数被调用时,向所述第二页面发送通信注册请求,所述通信注册请求中包含第一校验码及所述第一页面的页面参数,以使所述第二页面在确定所述第一校验码合法时,根据所述第一页面的页面参数,获取所述第一页面的窗口对象。本公开又一方面实施例提出的页面窗口通信装置,包括:注册模块,用于第二页面在加载过程中注册消息接收回调函数;调用模块,用于所述第二页面在确定加载完成时,调用窗口加载回调函数,以使注册所述窗口加载回调函数的第一页面在检测到所述窗口加载回调函数被调用时,向所述第二页面发送通信注册请求;获取模块,用于所述第二页面在检测到所述消息接收回调函数被调用时,获取所述消息接收回调函数的调用参数;判断模块,用于所述第二页面判断所述调用参数中的第一校验码是否合法;若合法,则所述第二页面根据所述调用参数中的第一页面参数,获取第一页面的窗口对象。本公开又一方面实施例提出的电子设备,其包括:处理器和存储器;其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如前所述的页面窗口通信方法。本公开再一方面实施例提出的计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如前所述的页面窗口通信方法。本公开另一方面实施例提出的计算机程序,该程序被处理器执行时实现如前所述的页面窗口通信方法。本公开实施例提供的页面窗口通信方法、装置、电子设备、计算机可读存储介质及计算机程序,通过第一页面利用待通信的第二页面参数,调用页面打开函数,以获取第二页面的窗口对象,并在第二页面的窗口对象中注册页面窗口加载回调函数,进而第一页面在检测到加载回调函数被调用时,向第二页面发送通信注册请求,通信注册请求中包含第一校验码及第一页面的页面参数,以使第二页面在确定第一校验码合法时,根据第一页面的页面参数,获取第一页面的窗口对象。由此,第一页面通过调用页面打开函数,打开第二页面并获取第二页面的窗口对象,并向第二页面发送通信注册请求,以使第二页面通过通信注册请求获取第一页面的窗口对象,之后第一页面、第二页面即可利用对方的窗口对象向对方发送信息,从而实现了页面窗口间的双向通信,改善了用户体验。本公开附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本公开的实践了解到。附图说明本公开上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:图1为本公开实施例所提供的一种页面窗口通信方法的流程示意图;图2为本公开实施例所提供的另一种页面窗口通信方法的流程示意图;图3为本公开实施例所提供的另一种页面窗口通信方法的流程示意图;图4为本公开实施例所提供的一种页面窗口通信方法的信令交互图;图5为本公开实施例所提供的一种页面窗口通信装置的结构示意图;图6为本公开实施例所提供的另一种页面窗口通信装置的结构示意图;图7为本公开实施例所提供的一种电子设备的结构示意图;图8为本公开实施例所提供的一种非暂态计算机可读存储介质的结构示意图。具体实施方式下面详细描述本公开的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的要素。下面通过参考附图描述的实施例是示例性的,旨在用于解释本公开,而不能理解为对本公开的限制。本公开实施例针对相关技术中,现有通过调用window.postMessage方法实现页面窗口间的通信的方法,无法实现页面窗口间的双向通信的问题,提出一种页面窗口通信方法。本公开实施例提供的页面窗口通信方法,通过第一页面利用待通信的第二页面参数,调用页面打开函数,以获取第二页面的窗口对象,并在第二页面的窗口对象中注册页面窗口加载回调函数,进而第一页面在检测到加载回调函数被调用时,向第二页面发送通信注册请求,通信注册请求中包含第一校验码及第一页面的页面参数,以使第二页面在确定第一校验码合法时,根据第一页面的页面参数,获取第一页面的窗口对象。由此,第一页面通过调用页面打开函数,打开第二页面并获取第二页面的窗口对象,并向第二页面发送通信注册请求,以使第二页面通过通信注册请求获取第一页面的窗口对象,之后第一页面、第二页面即可利用对方的窗口对象向对方发送信息,从而实现了页面窗口间的双向通信,改善了用户体验。下面参考附图对本公开提供的页面窗口通信方法、装置、电子设备、存储介质及计算机程序进行详细描述。下面分别以进行通信的两个页面窗口侧为例,对本公开实施例提供的页面窗口通信方法进行详细说明。首先以发起通信的页面窗口侧为例,对本公开实施例提供的页面窗口通信方法进行详细说明。图1为本公开实施例所提供的一种页面窗口通信方法的流程示意图,该方法应用于发起通信的页面窗口。如图1所示,该页面窗口通信方法,包括以下步骤:步骤101,第一页面利用待通信的第二页面参数,调用页面打开函数,以获取所述第二页面的窗口对象。其中,第二页面参数,可以包括窗口中显示的文档的统一资源定位符(Unifor本文档来自技高网...

【技术保护点】
1.一种页面窗口通信方法,其特征在于,包括:第一页面利用待通信的第二页面参数,调用页面打开函数,以获取所述第二页面的窗口对象;所述第一页面在所述第二页面的窗口对象中注册页面窗口加载回调函数;所述第一页面在检测到所述加载回调函数被调用时,向所述第二页面发送通信注册请求,所述通信注册请求中包含第一校验码及所述第一页面的页面参数,以使所述第二页面在确定所述第一校验码合法时,根据所述第一页面的页面参数,获取所述第一页面的窗口对象。

【技术特征摘要】
1.一种页面窗口通信方法,其特征在于,包括:第一页面利用待通信的第二页面参数,调用页面打开函数,以获取所述第二页面的窗口对象;所述第一页面在所述第二页面的窗口对象中注册页面窗口加载回调函数;所述第一页面在检测到所述加载回调函数被调用时,向所述第二页面发送通信注册请求,所述通信注册请求中包含第一校验码及所述第一页面的页面参数,以使所述第二页面在确定所述第一校验码合法时,根据所述第一页面的页面参数,获取所述第一页面的窗口对象。2.如权利要求1所述的方法,其特征在于,所述获取所述第二页面的窗口对象之后,还包括:将所述第二页面的窗口对象缓存至与所述第二页面对应的变量中。3.如权利要求2所述的方法,其特征在于,所述将所述第二页面的窗口对象缓存至与所述第二页面对应的变量中之后,还包括:所述第一页面在调用投递信息函数时,判断缓存中是否包含所述第二页面对应的变量,其中,调用投递信息函数的参数为待发送的信息;若包含,则根据所述第二页面对应的变量中缓存的第二页面的窗口对象,将所述待发送的信息发送给与所述第二页面。4.如权利要求3所述的方法,其特征在于,所述判断缓存中是否包含所述第二页面对应的变量之后,还包括:若未包含,则将所述待发送的信息以所述第二页面的标识为索引存入遗失信息数组中。5.如权利要求4所述的方法,其特征在于,所述将所述待发送的信息以所述第二页面的标识为索引存入遗失信息数组中之后,还包括:所述第一页面在检测到第一页面的消息接收回调函数被调用时,获取所述消息接收回调函数的调用参数;判断所述调用参数中是否包含所述第二页面的参数;若包含,则根据所述第二页面的参数获取所述第二页面的窗口对象;根据所述第二页面的窗口对象,将所述遗失信息数组中以所述第二页面的标识为索引的待发送信息,发送给所述第二页面。6.如权利要求5所述的方法,其特征在于,所述判断所述调用参数中是否包含所述第二页面的参数之后,还包括:若未包含,则根据所述调用参数中第三页面的参数,获取所述第三页面的窗口对象;判断所述遗失信息数组中是否包含以第三页面的标识为索引的待发送信息;若包含,则根据所述第三页面的窗口对象,将所述遗失信息数组中以第三页面的标识为索引的待发送信息,发送给所述第三页面。7.如权利要求5或6所述的方法,其特征在于,所述根据所述第二页面的参数获取所述第二页面的窗口对象之前,还包括:确定所述调用参数中的第一校验码合法。8.如权利要求5或6所述的方法,其特征在于,所述将所述遗失信息数组中以所述第二页面的标识为索引的待...

【专利技术属性】
技术研发人员:俞亮熊瑾
申请(专利权)人:天津字节跳动科技有限公司
类型:发明
国别省市:天津,12

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

1