跨域信息交互方法、装置及系统的制作方法

文档序号:9238290阅读:296来源:国知局
跨域信息交互方法、装置及系统的制作方法
【技术领域】
[0001]本发明涉及信息交互技术领域,特别是涉及跨域信息交互方法、装置及系统。
【背景技术】
[0002]随着互联网的不断发展,网页的设计也日益复杂。在一个网页中可以包含有多个框架页iframe。在修改网页中的一个iframe中的信息时,常常需要同时修改该网页或该网页中的其他iframe中的信息。当网页与该网页中的iframe是不同域时,或该网页中的多个iframe是不同域时,就需要进行跨域信息交互。
[0003]现有的跨域信息交互方案是通过对网页、iframe的统一资源定位符URL进行修改来进行的。URL中及后方的字符被称为frag部分,一般用于浏览器锚点定位,由于服务器并不关心frag部分,因此修改frag部分不会导致页面刷新,可以将其作为信息传输媒介。具体的,网页可以修改该网页中iframe的URL中的frag部分,iframe也可以修改其所在网页的URL中的frag部分。这样,网页和iframe通过定期检测自己的URL是否发生变化就可以得知是否有消息传入,从而获得改变后的frag部分进行相应处理。
[0004]但是,由于URL的长度限制,导致frag部分可以携带的信息量十分有限,同时,URL中不支持某些字符,这也导致所传输信息受到限制。

【发明内容】

[0005]本发明实施例的目的在于提供一种跨域信息交互方法、装置及系统,以提高页面之间信息交互的效率。
[0006]为达到上述目的,本发明实施例公开了一种跨域信息交互方法,应用于第二页面所在域的服务器,所述方法包括:
[0007]接收第一页面所在域的服务器通过第一 PostMessage发送的第一消息,所述第一消息中携带有第一指令和执行所述第一指令需要使用的第一传输数据;
[0008]根据所述第一消息执行所述第一指令,以使用所述第一传输数据进行第一处理;
[0009]其中,所述第一页面为父页面,所述第二页面为所述父页面内的框架页;或所述第一页面为框架页,所述第二页面为该框架页的父页面。
[0010]优选的,所述接收第一页面所在域的服务器通过第一 PostMessage发送的第一消息前,所述方法还包括:
[0011]绑定Message事件以监听第一页面所在域的服务器发送的PostMessage消息;
[0012]所述接收第一页面所在域的服务器通过第一 PostMessage发送的第一消息,包括:
[0013]当监听到所述第一页面所在域的服务器通过所述第一 PostMessage发送第一消息时,接收所述第一消息。
[0014]优选的,所述第一消息中还携带有返回指令;
[0015]在所述根据所述第一消息执行所述第一指令,以使用所述第一传输数据进行第一处理后,所述方法还包括:
[0016]根据所述返回指令判断是否需要向所述第一页面所在域的服务器返回进行所述第一处理后的结果;
[0017]如果是,则通过第二 PostMessage向所述第一页面所在域的服务器发送第二消息,所述第二消息中携带有所述第一处理后的结果。
[0018]优选的,所述第一页面为框架页,所述第二页面为该框架页的父页面;
[0019]所述方法还包括:
[0020]通过第三PostMessage向第三页面所在域的服务器发送第三消息,所述第三消息中携带有所述第一指令和执行所述第一指令需要使用的第一传输数据,以使所述第三页面所在域的服务器执行所述第一指令,使用所述第一传输数据进行第一处理。
[0021]优选的,所述第一页面为父页面,所述第二页面为所述父页面内的框架页;
[0022]所述方法还包括:
[0023]接收用户针对所述第二页面的配置修改指示;
[0024]根据所述配置修改指示,通过第四PostMessage向第一页面所在域的服务器发送第四消息,所述第四消息中携带有与所述配置修改指示对应的第二指令和执行所述第二指令需要使用的配置修改数据,以使所述第一页面所在域的服务器根据所述第四消息执行所述第二指令,使用所述配置修改数据进行配置修改处理。
[0025]优选的,所述配置修改指示用于指示进行头像修改;
[0026]所述第二指令为头像修改指令;
[0027]所述配置修改数据为修改后的头像数据。
[0028]优选的,所述消息被设置为JSON字符串;
[0029]所述根据所述第一消息执行所述第一指令,以使用所述第一传输数据进行第一处理包括:
[0030]将所述第一消息转换为第一对象,所述第一对象中携带有所述第一传输数据和所述第一指令;
[0031]执行所述第一对象中的所述第一指令,以使用所述第一传输数据进行第一处理。
[0032]一种跨域信息交互装置,应用于第二页面所在域的服务器,所述装置包括:消息接收单元和指令执行单元,
[0033]所述消息接收单元,用于接收第一页面所在域的服务器通过第一 PostMessage发送的第一消息,所述第一消息中携带有第一指令和执行所述第一指令需要使用的第一传输数据;
[0034]所述指令执行单元,用于根据所述第一消息执行所述第一指令,以使用所述第一传输数据进行第一处理;
[0035]其中,所述第一页面为父页面,所述第二页面为所述父页面内的框架页;或所述第一页面为框架页,所述第二页面为该框架页的父页面。
[0036]优选的,还包括:消息监听单元,用于在所述消息接收单元接收第一页面所在域的服务器通过第一 PostMessage发送的第一消息前,绑定Message事件以监听第一页面所在域的服务器发送的PostMessage消息;
[0037]所述消息接收单元,具体用于:当所述消息监听单元监听到所述第一页面所在域的服务器通过所述第一 PostMessage发送第一消息时,接收所述第一消息,所述第一消息中携带有第一指令和执行所述第一指令需要使用的第一传输数据。
[0038]优选的,所述第一消息中还携带有返回指令;
[0039]所述装置还包括:返回判断单元和消息返回单元,
[0040]所述返回判断单元,用于在所述指令执行单元根据所述第一消息执行所述第一指令,以使用所述第一传输数据进行第一处理后,根据所述返回指令判断是否需要向所述第一页面所在域的服务器返回进行所述第一处理后的结果,如果是,则触发所述消息返回单元;
[0041]所述消息返回单元,用于通过第二 PostMessage向所述第一页面所在域的服务器发送第二消息,所述第二消息中携带有所述第一处理后的结果。
[0042]优选的,所述第一页面为框架页,所述第二页面为该框架页的父页面;
[0043]所述装置还包括:消息发送单元,用于通过第三PostMessage向第三页面所在域的服务器发送第三消息,所述第三消息中携带有所述第一指令和执行所述第一指令需要使用的第一传输数据,以使所述第三页面所在域的服务器执行所述第一指令,使用所述第一传输数据进行第一处理。
[0044]优选的,所述第一页面为父页面,所述第二页面为所述父页面内的框架页;
[0045]所述装置还包括:指示接收单元和指示传递单元,
[0046]所述指示接收单元,用于接收用户针对所述第二页面的配置修改指示;
[0047]所述指示传递单元,用于根据所述配置修改指示,通过第四PostMessage向第一页面所在域的服务器发送第四消息,所述第四消息中携带有与所述配置修改指示对应的第二指令和执行所述第二指令需要使用的配置修改数据,以使所述第一页面所在域的服务器根据所述第四消息执行所述第二指令,使用所述配置修改数据进行配置修改处理。
[0048]优选的,所述配置修改指示用于指示进行头像修改;
[0049]所述第二指令为头像修改指令;
[0050]所述配置修改数据为修改后的头像数据。
[0051]优选的,所述消息被设置为JSON字符串;
[0052]所述指令执行单元包括:消息转换子单元和指令执行子单元,
[0053]消息转换子单元,用于将所述第一消息转换为第一对象,所述第一对象中携带有所述第一传输数据和所述第一指令;
[0054]指令执行子单元,用于执行所述第一对象中的所述第一指令,以使用所述第一传输数据进行第一处理。
[0055]一种跨域信息交互系统,包括:第一页面所在域的服务器、第二页面所在域的服务器及第三页面所在域的服务器,所述第二页面为所述第一页面和所述第三页面的父页面;
[0056]所述第一页面所在域的服务器,用于通过第一 PostMessage向所述第二面所在域的服务器发送第一消息,所述第一消息中携带有第一指令和执行所述第一指令需要使用的第一传输数据;
[0057]所述第二页面所在域的服务器,用于根据所述第一消息执行所述第一指令,以使用所述第一传输数据进行第一处理,所述第二页面所在域的服务器还用于通过第三PostMessage向所述第三页面所在域的服务器发送第三消息,所述第三消息中携带有所述第一指令和执行所述第一指令需要使用的第一传输数据;
[0058]所述第三页面所在域的服务器,用于执行所述第三消息中的第一指令,以使用所述第一传输数据进行第一处理。
[0059]本发明实施例提供的一种跨域信息交互方法、装置及系统,可以使某页面所在域的服务器通过PostMessage向另一页面所在域的服务器发送携带有数据的消息。由于该消息所
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1