Javascript 将HTML源代码注入iframe以避免跨站点脚本问题

Javascript 将HTML源代码注入iframe以避免跨站点脚本问题,javascript,ajax,security,web,Javascript,Ajax,Security,Web,我试图将iframe的源指定给空白HTML页面。由于源位于不同的域上,因此我收到“权限被拒绝”错误。有没有办法将HTML源代码注入iframe以避免跨站点问题 将iframe连接到另一个域通常不是问题,您可以通过设置x-frame-options的http头来阻止其他人在iframe中查看您的站点。我认为您没有费心检查http响应头 如果您只需要一个空白页面,则打开iframe以访问您控制的页面。就像位于文档根目录中的blank.html一样。正如Rook所说,跨站点指向iframe通常没有问题

我试图将iframe的源指定给空白HTML页面。由于源位于不同的域上,因此我收到“权限被拒绝”错误。有没有办法将HTML源代码注入iframe以避免跨站点问题

将iframe连接到另一个域通常不是问题,您可以通过设置x-frame-options的http头来阻止其他人在iframe中查看您的站点。我认为您没有费心检查http响应头


如果您只需要一个空白页面,则打开iframe以访问您控制的页面。就像位于文档根目录中的blank.html一样。

正如Rook所说,跨站点指向iframe通常没有问题。事实上,iframe是绕过某种程度的跨站点通信的已知方法之一。此外,这种机制被用于广告中,以便动态地向各种网站上的用户提供内容


无论如何,实现所需的另一种方法是创建代理服务。在本地服务器上,您可以编写一个脚本,对页面发出GET请求,然后将HTML作为自己的响应吐出。这样,iframe的源代码就可以指向本地服务器。

我认为这属于跨站点脚本,所以这是不可能的。如果您对iframe中加载的站点拥有控制权,则可以使用。请问你的最终目标是什么?也许有另一种方法可以做你想做的事。谢谢你的回复。我将试图更详细地阐述这个问题。我们正试图通过使Javascript代码成为通用小部件来分离web应用程序上的Javascript代码。为了为其他应用程序重用小部件提供灵活性,我们不能采用代理方法。这将需要小部件的所有用户设置代理。我们需要将所有Javascript放在一个域中。由于网页呈现在不同的域中,因此将小部件中的iframe源设置为javascript域中的HTML页面会导致问题。谢谢,我们刚刚在同一域中创建了一个虚拟页面。