js访问跨域的iframe内容

speed_feng speed_feng 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我使用动态生成隐藏iframe 和 form 的方式进行跨域POST请求
返回来的数据是在隐藏的iframe中的
由于跨域 我无法直接使用js获取iframe响应后的内容
代码如下:
var iframe = document.createElement("iframe");
var iframeName = "crossDoamin";
iframe.style.display = "none";
iframe.name = iframeName;
document.body.appendChild(iframe);

var form = document.createElement("form");
form.action = "http://xxxxxxxxx.action";
form.method = "POST";
form.target = iframeName;
form.style.display = "none";

//repeat for each parameter
var input_pid = document.createElement("input");
input_pid.name = "xxx";
input_pid.value = xxx;
form.appendChild(input_pid);

var input_sname = document.createElement("input");
input_sname.name = "xxxx";
input_sname.value = xxxx
form.appendChild(input_sname);
//append the form and submit
document.body.appendChild(form);

form.submit();

这样我在隐藏的iframe中返回了我的数据
现在如何才能跨域获得数据

像网上提供的postMessage 和 在url后面带hash 我都试过 但是解决不了
希望大神们提供具体的方式
...全文

相关推荐

js实现跨域访问的三种方法

主要介绍了js实现跨域访问的三种方法,包括基于iframe实现跨域、基于script标签实现跨域以及后台代理方式 ,感兴趣的小伙伴们可以参考一下

weixin_38724333

JS跨域访问IFrame问题的解决方法

同源策略是浏览器的一个核心安全机制,它防止不同源的文档或脚本之间的相互干扰。所谓“源”通常由协议、域名和端口号共同决定。当两个URL的协议、域名和端口号都相同时,它们才被看作是同源的。跨源资源共享(Cross-Origin Resource Sharing,简称CORS)是一种网络浏览器的安全策略,允许服务器在响应跨域HTTP请求时指定哪些域可以从其接收请求。CORS通过在HTTP头中添加新的字段来实现跨域请求,允许服务器声明哪些来源可以访问资源,从而允许或拒绝来自不同源的请求。

闲书郎

解决JS跨域访问IFrame的解决方案

通过HTTPClient界面在JSP中嵌入iframe子界面跨域时,无法获取跨域界面的属性值的问题

vincent50411

js iframe跨域访问(同主域/非同主域)分别深入介绍

js跨域是个讨论很多的话题。iframe跨域访问也被研究的很透了,本文今天就叨叨两句,感兴趣的朋友可以了解下,就当巩固知识了,希望本文对你有所帮助

weixin_38552292

JS未跨域操作iframe里的DOM

主要介绍了JS未跨域操作iframe里的DOM 的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下

weixin_38638647
评论 7
收藏 已收藏
分享
返回顶部
speed_feng
JavaScript 87,984 成员 224,681 内容