一种跨域数据获取的方法和装置制造方法及图纸

技术编号:17310840 阅读:67 留言:0更新日期:2018-02-24 08:01
本公开是关于一种跨域数据获取的方法和装置,属于互联网技术领域。所述方法包括:执行第一域的第一网页代码,触发向第二域的服务器获取所述第二域的第二网页代码;通过所述第二网页代码,向所述第二域的服务器获取目标数据;将所述目标数据传递给所述第一网页代码。采用本公开,可以提高跨域数据获取的灵活性。

【技术实现步骤摘要】
一种跨域数据获取的方法和装置
本公开涉及互联网
,特别涉及一种跨域数据获取的方法和装置。
技术介绍
随着网络技术和计算机技术的飞速发展,互联网已经成为了人们日常生活、工作中非常重要的工具之一。浏览器是用户访问互联网时最常使用的一种工具。在使用浏览器访问互联网时,有时需要进行跨域数据获取,跨域数据获取是指某个域(如www.sina.com)的网页代码在执行过程中触发终端向其它域(如www.qq.com)的服务器获取数据,这里获取的数据为字符串数据。在进行跨域数据获取时一般采用JSONP(JSONwithPadding)技术,该技术中,通过在网页代码中设置script(脚本)标签,使终端向上述其它域的服务器发送HTTP(HypertextTransferProtocol,超文本传输协议)GET(获取)请求,该服务器根据请求返回一段脚本,其中包含有请求的数据,然后,终端执行这段脚本,便可以提取出其中的数据。在实现本公开的过程中,专利技术人发现相关技术至少存在以下问题:通过JSONP技术,只能实现跨域的HTTPGET请求,而其它类型的数据请求无法实现,这样,在很多情况下,无法通过该技术进行跨域数据获取,从而,导致跨域数据获取的灵活性较差。
技术实现思路
为了解决相关技术的问题,本公开实施例提供了一种跨域数据获取的方法和装置,以提高跨域数据获取的灵活性。所述技术方案如下:一方面,提供了一种跨域数据获取的方法,所述方法包括:执行第一域的第一网页代码,触发向第二域的服务器获取所述第二域的第二网页代码;通过所述第二网页代码,向所述第二域的服务器获取目标数据;将所述目标数据传递给所述第一网页代码。可选的,所述通过所述第二网页代码,向所述第二域的服务器获取目标数据,包括:执行所述第二网页代码,以加载预设的哈希改变触发事件,对目标统一资源定位器URL的哈希HASH字段进行监测,其中,所述目标URL为第一网页代码中触发获取所述第二网页代码的标签中设置的第二网页代码的URL;通过所述第一网页代码,对所述目标URL的HASH字段进行修改;当监测到所述目标URL的HASH字段发生改变时,执行所述哈希改变触发事件,向所述第二域的服务器获取目标数据。可选的,所述通过所述第一网页代码,对所述目标URL的HASH字段进行修改,包括:通过所述第一网页代码,将所述目标URL的HASH字段设置为目标哈希信息,所述目标哈希信息包含有所述第一网页代码中预设的指示信息;所述执行所述哈希改变触发事件,向所述第二域的服务器获取目标数据,包括:执行所述哈希改变触发事件,根据所述目标哈希信息中的所述指示信息,向所述第二域的服务器发送数据请求,并接收所述第二域的服务器反馈的目标数据。可选的,所述目标哈希信息还包含有所述第一网页代码中预设的验证信息;所述执行所述哈希改变触发事件,根据所述目标哈希信息中的所述指示信息,向所述第二域的服务器发送数据请求,并接收所述第二域的服务器反馈的目标数据,包括:执行所述哈希改变触发事件,对所述目标哈希信息中的所述验证信息进行验证,如果验证通过,则根据所述目标哈希信息中的所述指示信息,向所述第二域的服务器发送数据请求,并接收所述第二域的服务器反馈的目标数据。可选的,所述将所述目标数据传递给所述第一网页代码,包括:通过所述第二网页代码,将所述目标数据赋值给第一变量,其中,所述第一变量是变量值不随浏览器会话中域的改变而改变的变量;通过所述第二网页代码,向所述第一域的服务器获取所述第一域的第三网页代码;通过所述第三网页代码,从所述第一变量中获取所述目标数据,并将所述目标数据赋值给所述第一网页代码中的目标变量。另一方面,提供了一种跨域数据获取的装置,所述装置包括:执行模块,用于执行第一域的第一网页代码,触发向第二域的服务器获取所述第二域的第二网页代码;获取模块,用于通过所述第二网页代码,向所述第二域的服务器获取目标数据;传递模块,用于将所述目标数据传递给所述第一网页代码。可选的,所述获取模块,用于:执行所述第二网页代码,以加载预设的哈希改变触发事件,对目标统一资源定位器URL的哈希HASH字段进行监测,其中,所述目标URL为第一网页代码中触发获取所述第二网页代码的标签中设置的第二网页代码的URL;通过所述第一网页代码,对所述目标URL的HASH字段进行修改;当监测到所述目标URL的HASH字段发生改变时,执行所述哈希改变触发事件,向所述第二域的服务器获取目标数据。可选的,所述获取模块,用于:通过所述第一网页代码,将所述目标URL的HASH字段设置为目标哈希信息,所述目标哈希信息包含有所述第一网页代码中预设的指示信息;所述执行所述哈希改变触发事件,向所述第二域的服务器获取目标数据,包括:执行所述哈希改变触发事件,根据所述目标哈希信息中的所述指示信息,向所述第二域的服务器发送数据请求,并接收所述第二域的服务器反馈的目标数据。可选的,所述目标哈希信息还包含有所述第一网页代码中预设的验证信息;所述获取模块,用于:执行所述哈希改变触发事件,对所述目标哈希信息中的所述验证信息进行验证,如果验证通过,则根据所述目标哈希信息中的所述指示信息,向所述第二域的服务器发送数据请求,并接收所述第二域的服务器反馈的目标数据。可选的,所传递模块,用于:通过所述第二网页代码,将所述目标数据赋值给第一变量,其中,所述第一变量是变量值不随浏览器会话中域的改变而改变的变量;通过所述第二网页代码,向所述第一域的服务器获取所述第一域的第三网页代码;通过所述第三网页代码,从所述第一变量中获取所述目标数据,并将所述目标数据赋值给所述第一网页代码中的目标变量。本公开的一些有益效果可以包括:本公开实施例中,执行第一域的第一网页代码,触发向第二域的服务器获取第二域的第二网页代码,通过第二网页代码,向第二域的服务器获取目标数据,将目标数据传递给第一网页代码。该处理过程中,借助同域数据获取过程来实现跨域数据获取,第二域的第二网页代码向第二域的服务器获取数据属于同域数据获取,可以支持任意类型的数据请求,因此,可以提高跨域数据获取的灵活性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。附图说明此处所说明的附图用来提供对本公开的进一步理解,构成本申请的一部分,并不构成对本公开的限定。在附图中:图1是本公开实施例提供的跨域数据获取的方法的示例性流程图;图2是本公开实施例提供的跨域数据获取的方法的示例性流程图;图3是本公开实施例提供的跨域数据获取的方法的示例性流程图;图4是本公开实施例提供的跨域数据获取的装置的示例性结构图;图5是本公开实施例提供的终端的示例性结构图。通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。具体实施方式为使本公开的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本公开做进一步详细说明。在此,本公开的示意性实施方式及其说明用于解释本公开,但并不作为对本公开的限定。本公开实施例提供一种跨域数据获取的方法和装置,以下结合附图对本公开进行详细说明。本公开实施例提供了一种跨域数据获取的方法,如图1所示,本文档来自技高网...
一种跨域数据获取的方法和装置

【技术保护点】
一种跨域数据获取的方法,其特征在于,所述方法包括:执行第一域的第一网页代码,触发向第二域的服务器获取所述第二域的第二网页代码;执行所述第二网页代码,以加载预设的哈希改变触发事件,对目标统一资源定位器URL的哈希HASH字段进行监测,其中,所述目标URL为第一网页代码中触发获取所述第二网页代码的标签中设置的第二网页代码的URL;通过所述第一网页代码,将所述目标URL的HASH字段设置为目标哈希信息,所述目标哈希信息包含有所述第一网页代码中预设的指示信息和所述第一网页代码中预设的验证信息,所述指示信息是所述第二网页代码或所述第二域的服务器可以解读的信息,由第一域的运营方和第二域的运营方约定设置;当监测到所述目标URL的HASH字段发生改变时,执行所述哈希改变触发事件,对所述目标哈希信息中的所述验证信息进行验证,如果验证通过,则根据所述目标哈希信息中的所述指示信息,向所述第二域的服务器发送数据请求,并接收所述第二域的服务器反馈的目标数据;将所述目标数据传递给所述第一网页代码。

【技术特征摘要】
1.一种跨域数据获取的方法,其特征在于,所述方法包括:执行第一域的第一网页代码,触发向第二域的服务器获取所述第二域的第二网页代码;执行所述第二网页代码,以加载预设的哈希改变触发事件,对目标统一资源定位器URL的哈希HASH字段进行监测,其中,所述目标URL为第一网页代码中触发获取所述第二网页代码的标签中设置的第二网页代码的URL;通过所述第一网页代码,将所述目标URL的HASH字段设置为目标哈希信息,所述目标哈希信息包含有所述第一网页代码中预设的指示信息和所述第一网页代码中预设的验证信息,所述指示信息是所述第二网页代码或所述第二域的服务器可以解读的信息,由第一域的运营方和第二域的运营方约定设置;当监测到所述目标URL的HASH字段发生改变时,执行所述哈希改变触发事件,对所述目标哈希信息中的所述验证信息进行验证,如果验证通过,则根据所述目标哈希信息中的所述指示信息,向所述第二域的服务器发送数据请求,并接收所述第二域的服务器反馈的目标数据;将所述目标数据传递给所述第一网页代码。2.根据权利要求1所述的方法,其特征在于,所述将所述目标数据传递给所述第一网页代码,包括:通过所述第二网页代码,将所述目标数据赋值给第一变量,其中,所述第一变量是变量值不随浏览器会话中域的改变而改变的变量;通过所述第二网页代码,向所述第一域的服务器获取所述第一域的第三网页代码;通过所述第三网页代码,从所述第一变量中获取所述目标数据,并将所述目标数据赋值给所述第一网页代码中的目标变量。3.一...

【专利技术属性】
技术研发人员:任远姚丽梅王宗妮
申请(专利权)人:小米科技有限责任公司
类型:发明
国别省市:北京,11

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

1