我想做一个页面,我可以从不同的域加载到它的其他页面。加载的页面应该像它们自己一样工作。
原因是给它们添加了额外的功能。
我试过用JavaScript和iframes来做,但我受到同源策略的限制。现在我正在考虑Java applet/JavaFX/Apache Pivot。我读到有了数字签名,他们就可以建立一个连接来加载一个页面。
我的页面也应该从加载的页面中获取一些信息(标题,图标等)。
我这样看对吗?还是不可能做到?在其他情况下,哪种技术是更好的选择?
注:谢谢你的帮助
您可以尝试使用代理将内容传递到您的域,然后您可以按照自己的意愿操作页面(使用iframes或ajax)。
假设你创建了一个名为proxy.php
:
<?php
if(isset($_GET['url']))
echo file_get_contents($_GET['url']);
?>
iframe的src不应该指向外部页面(<iframe src="somedomain.com/somepage" />
),而应该指向向您提供该页面内容的代理:<iframe src="proxy.php?url=somedomain.com/somepage" />
。
这将是一个简单的方法来管理您的任务,虽然你不能真正的复制其他网站这样做…您仍然需要考虑cookie、header和其他与会话相关的变量。
这样想,在您的服务器端,例如与php
和curl
从其他域下载页面,然后将它们与jQuery
ajax到您的网页。这就像代理页面,但现在他们在你的服务器上,你可以避免授予跨域规则。