2009-06-17 7 views
0

J'ai une page web que j'héberge pour un client. La page contient l'en-tête et le pied de page du client et notre contenu (une application flash) placé au milieu.Comment insérer ma page Web dans un iframe?

Le client veut maintenant nous fournir une page html qui contient son en-tête, pied de page et quelques annonces dans un document. Ils veulent que nous incluions ce document en tant qu'iFrame et que nous placions dynamiquement NOTRE contenu à l'intérieur de ce cadre.

Cela semble très hacky à moi mais j'ai pensé que je donnerais un coup de feu. Alors quelle est la meilleure façon de prendre mon balisage et de le placer dans l'iframe?

Merci! Chris

+0

Donc, ce document HTML que le client fournit est situé sur un autre serveur? La raison pour laquelle votre question prête à confusion est que vous déclarez que vous êtes celui qui l'héberge. Si c'est sur un autre serveur, à moins qu'ils ajoutent du code dans leur document pour vous permettre de charger du contenu dynamique, vous ne pouvez pas le faire. Il y a un énorme trou de sécurité là-bas si vous étiez en mesure de le faire sans leur "permission" – Sev

Répondre

1

Impossible de faire côté client en raison de problèmes de sécurité XSS ... sauf s'ils sont tous les deux sur le même domaine, mais à partir de votre description, j'en doute. Côté serveur, vous pouvez lire dynamiquement la page cible, la modifier comme vous le souhaitez et la présenter ensuite. Si vous avez vraiment besoin dans un iframe, vous pouvez charger dynamiquement la source modifiée que vous avez obtenu par quelque chose comme ceci:

<html> 
<head></head> 
<body> 
<iframe id="blah"></iframe> 
<script> 
var doc=document.getElementById("blah").contentDocument; 
doc.open(); 
doc.write("content"); 
doc.close(); 
</script> 
</body> 
</html> 

Rappelez-vous simplement changer aussi des liens, des images, et ainsi de suite avec des URL complètes.

+0

y at-il un moyen de maintenir une liste blanche etc pour permettre à certains domaines de laisser mon application intégrée en tant qu'iFrame? – Vik

0

Pouvez-vous leur fournir une API qu'ils peuvent utiliser - afin qu'ils puissent placer quelque chose dans leur page pour appeler vos bits. Pendant que vous travaillez avec Flash, vous pouvez éviter les problèmes de script entre sites en incluant un fichier de stratégie pour accorder l'autorisation à leur domaine.

Questions connexes