1

我想发送一个CROSSDOMAINPOST REQUEST。

我创建了一个隐藏的 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);               
document.body.appendChild(form); 
form.submit();

现在,当我使用 javascript 来获取 iframe 的 innerHTML 时

document.getElementsByTagName('iframe')[0].contentWindow.document

原来的问题是protocal doamin and .. must match

如何获取隐藏 iframe 的 innerHTML?

4

1 回答 1

0

你不能!当您的窗口通过 HTTPS 提供时,您不能包含通过 HTTP 提供的资源,而不会让浏览器显示警告。这是为了用户的安全!

您可以通过在您的站点上调用另一个脚本来解决此限制,该脚本反过来将调用进行 POST 调用并返回您正在寻找的 HTML 内容。只是一个想法-我从未测试过...

于 2013-07-30T03:45:27.597 回答