2013-03-17 329 views
0

我有一个HTML页面,其中包含一个来自不属于我的跨域的iframe。iframe跨域访问

我需要在iframe中做一些基本的javascript修改(写入值并激活一个事件 - >表单处理)。

由于相同的来源策略,我不允许这样做。但是,我需要这样做,所以我正在寻找解决方法。

解决方案非常重要,我可以为自己运行脚本。如果它在一个浏览器中运行并且我不需要自己的安全性就足够了。

在我的研究中,我发现了很多方法来打破像document.location(在FF中只有类似位置),JSONP/sendMessage(我需要是两个域的所有者)等相同的原产地策略等等,什么都不适用于不属于我的页面的iframe。

回答

2

唯一的“解决方法”,如果您不能使其他网站include the relevant CORS headers,将获取iframe内容服务器端并将其作为来自您自己的域的服务器端。

之所以没有简单的解决方法是由于为什么有这样的same origin policy:为了保护用户。

+0

CORS是不可能的。服务器端“代理”的想法(这是正确的术语?)可以工作,我需要在提供iframe之前进行身份验证,但也许我可以授权,代理,js操纵它。我会尽力! – 2013-03-17 11:38:28