通过Iframe跨域获取其它站的数据 或获取某页面及数据
2017-09-13 15:41
190 查看
通过Iframe在A网站页面内嵌入空白页面的方式,跨域获取B网站的数据返回给A网站!
以下代码只是为演示该方法具体是如何操作的,实际的意义并不大。
其实这个方法还可以解决很多方面的跨域操作,以下两点为我工作中遇到的情况!
比如A系统中打开B系统页面的时候,获取B系统页面高度,A系统中可以动态设置窗口的高度
还有A系统中打开B系统页面的时候,B系统页面进行一系列操作,操作成功后需关闭A系统窗口,就可以在操作成功后再在B系统中嵌入A系统的blank.html页面,blank.html页面打开的时候,动态关闭A系统的窗口!
下面为大家讲下是如何实现该方法的
1.在A系统下添加名称为blank.html的空白页面,注意不需要任何内容,因为只需要在里面添加js代码即可!
2.然后我们在A系统的Home/Index页面下嵌入ifrme路径指向B系统的Home/Index页面,并且加上自定义参数url,url就为刚才添加的A系统的空白页面,iframe记得添加name和id属性,方便接下来的操作!
3.这里会请求B系统的HomeController控制器下的Index动作,接收到传递过来的url参数,通过ViewBag.BlankUrl=url返回到页面,页面加载的时候动态获取页面的高度,然后在页面的div元素中再次添加name=iframeBlank的iframe元素并且地址指向ViewBag.BlankUrl也就是A系统的空白页面,并通过"#"字符分割需要的参数传递过去,符号可以自定义!
4.A系统通过Iframe嵌入B系统Home/Index页面的同时时,B系统又同时在页面嵌入A系统的blank.html页面以及B系统传递回来的数据,由于iframe的特殊属性需通过以下方式获取返回的数据 var data= window.parent.parent.frames["myframe"].frames["iframeBlank"].location.hash
以下代码只是为演示该方法具体是如何操作的,实际的意义并不大。
其实这个方法还可以解决很多方面的跨域操作,以下两点为我工作中遇到的情况!
比如A系统中打开B系统页面的时候,获取B系统页面高度,A系统中可以动态设置窗口的高度
还有A系统中打开B系统页面的时候,B系统页面进行一系列操作,操作成功后需关闭A系统窗口,就可以在操作成功后再在B系统中嵌入A系统的blank.html页面,blank.html页面打开的时候,动态关闭A系统的窗口!
下面为大家讲下是如何实现该方法的
1.在A系统下添加名称为blank.html的空白页面,注意不需要任何内容,因为只需要在里面添加js代码即可!
2.然后我们在A系统的Home/Index页面下嵌入ifrme路径指向B系统的Home/Index页面,并且加上自定义参数url,url就为刚才添加的A系统的空白页面,iframe记得添加name和id属性,方便接下来的操作!
3.这里会请求B系统的HomeController控制器下的Index动作,接收到传递过来的url参数,通过ViewBag.BlankUrl=url返回到页面,页面加载的时候动态获取页面的高度,然后在页面的div元素中再次添加name=iframeBlank的iframe元素并且地址指向ViewBag.BlankUrl也就是A系统的空白页面,并通过"#"字符分割需要的参数传递过去,符号可以自定义!
4.A系统通过Iframe嵌入B系统Home/Index页面的同时时,B系统又同时在页面嵌入A系统的blank.html页面以及B系统传递回来的数据,由于iframe的特殊属性需通过以下方式获取返回的数据 var data= window.parent.parent.frames["myframe"].frames["iframeBlank"].location.hash
相关文章推荐
- 通过Iframe在A网站页面内嵌入空白页面的方式,跨域获取B网站的数据返回给A网站!
- iframe跨域访问cookie问题, A站iframe引用其它站(B站)的内容时,B站的页面获取不到B站种下的Cookies。
- layui监听select下拉框获取数据通过doT.js加载页面多选框
- 通过jsonp获取json数据实现AJAX跨域请求
- 同一页面的两个Iframe获取数据
- html中通过js获取接口JSON格式数据解析以及跨域问题
- 【JSP开发】通过request获取各种静态页面的表单数据
- js通过XMLHttpRequest获取网页不能跨域,试iframe
- iframe跨域获取父页面url
- java通过url获取页面数据 java解析xml 基金净值接口使用方法
- WebForm.aspx 页面通过 AJAX 访问WebForm.aspx.cs类中的方法,获取数据
- TP下页面通过Ajax获取控制器中的数据
- HTML5网页通过ajax跨域调用接口获取json数据并解析(一)
- window.name + iframe 跨域获取数据
- Vue.js 通过jQuery ajax获取数据实现更新后重新渲染页面的方法
- 通过jquery ajax在从服务器获取一个文件的数据,显示到客户端的页面
- js iframe 通过postMessage 向父页面跨域传数据
- iframe给主页面元素赋值【使用jquery获取页面数据】
- iframe跨域传输数据(一);子页面访问主框架DOM元素;
- jQuery中通过JSONP来跨域获取数据的三种方式