[发明专利]跨网络域资源的访问方法及设备有效
申请号: | 201810523279.X | 申请日: | 2018-05-28 |
公开(公告)号: | CN108769189B | 公开(公告)日: | 2020-01-03 |
发明(设计)人: | 彭志文;朱先智 | 申请(专利权)人: | 上海恺英网络科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 31243 上海百一领御专利代理事务所(普通合伙) | 代理人: | 陈贞健;姜伯炎 |
地址: | 200232 上海市徐*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 跨网络域 网络域 访问路径 跨域资源访问 技术复杂性 网站服务器 访问结果 技术实现 虚拟资源 用户设备 资源访问 资源消耗 访问 复杂度 客户端 浏览器 传递 兼容 返回 申请 | ||
本申请提供了一种跨网络域资源的访问方法及设备,能够根据用户设备对第一网络域中虚拟资源的访问路径,获取第二网络域中资源的访问路径并进行访问,再将第二网络域资源的访问结果返回给客户端,从而能够实现跨网络域的资源访问,解决了跨域资源访问的限制,技术方案更加简单、方便,还可实现POST请求和COOKIE的传递,从而减少了网站服务器的资源消耗,降低了技术实现的复杂度,实现了与多种浏览器的兼容,降低了COOKIE传递的技术复杂性。
技术领域
本申请涉及网络通讯领域,尤其涉及一种跨网络域资源的访问方法及设备。
背景技术
在异步访问技术Ajax中,用户通过向互联网网站发送异步HTTP请求以访问网络资源,而该网络资源可能引用了与其不属于同一个网络域的其它网络资源,而出于网络安全方面的考虑,跨域的网络资源访问是不允许的,但是在某些场景下,又存在跨域访问的相关需求。在跨域访问的技术限制中,只有具有相同的域名、端口和协议的访问URL才被认为是同域的资源访问,域名、端口、协议或子域名中只要有一项不同,即被认为是跨网络域的资源访问,就会受到跨域资源访问的限制,从而因为网络域相互间的信任问题而导致无法进行访问。
当前,可以实现跨域访问的技术方案,主要有如下几种:
方案一,通过JSONP进行跨域数据交互,JSONP(JSON with Padding)是一个非官方的跨域数据交互协议,JSONP通过动态加载跨域资源提供方拼接好的回调函数和资源数据并在跨域资源访问方里面进行回放来实现跨域的数据交互。通过JSONP实现跨域,优点在于在要求不高的场景下使用简单方便,缺点是无法接收POST请求的数据,只能使用GET模式传递数据,另外是没有有效的错误处理机制,资源访问失败时无法得知,也不能取消或重新开始请求,还有是传递COOKIE等身份验证数据的实现比较麻烦。
方案二,通过动态语言脚本中转实现跨域数据交互,即跨域资源访问发起方在本地服务器上建立相应的动态语言脚本(如JSP、ASP、PHP等)作为中转页面,用户请求这个脚本时,该脚本实时抓取跨域资源提供方的资源数据,再返回给用户。例如,网站a.com的主页需要加载网站b.com中的资源b.com/xx.json,那么可在网站a.com的服务器上创建动态脚本crossdomain.php,在客户端访问网站a.com时,客户端直接加载a.com/crossdomain.php,脚本crossdomain.php通过HTTP协议实时抓取b.com/xx.json的资源数据再返回给客户端,从而实现跨域数据交互。
通过动态语言脚本中转实现跨域数据交互和通过JSONP实现跨域数据交互一样简单方便,但是又产生了新的问题:由于每次跨域数据交互就要做一次HTTP中转,因此增加了网络延时和服务器的负担;在异步加载时,a.com/crossdomain.php能接收到COOKIE等认证信息,但是跨域资源提供方b.com/xx.json无法做到无感知接收COOKIE认证信息。
方案三,通过跨域资源共享(Cross-origin resource sharing,CORS)实现跨域数据交互,CORS是一个W3C标准,它允许浏览器向跨源服务器发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。整个CORS通信过程,都是浏览器自动完成,不需要用户参与。实现CORS通信的关键是服务器,只要服务器实现了CORS接口,就可以跨源通信。通过CORS实现跨域数据交互的缺点在于,CORS过度依赖浏览器,因此存在浏览器兼容性问题;此外,CORS实现跨域的某些验证信息,如COOKIE跨域传递实现很复杂,需要做过多的设置,从而提升了技术门槛。
另外,还存在一些非主流的跨域解决方案,如将跨域的资源页面通过Javascript强制设置基础主域为document.domain来实现同域,该方案的缺点在于使用了iframe因而导致技术复杂性很高,从而难以使用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海恺英网络科技有限公司,未经上海恺英网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810523279.X/2.html,转载请声明来源钻瓜专利网。