118 votes

Quelle est la différence entre IFrame et Frame ?

En examinant les possibilités d'intégrer la page 3D Secure dans mon propre formulaire de commande, j'ai trouvé ce qui suit :

"Certains sites de commerce consacreront la page entière du navigateur à l'authentification plutôt que d'utiliser un cadre (pas nécessairement un iFrame, qui est de toute façon un objet moins sécurisé)."

de http://en.wikipedia.org/wiki/3-D_Secure

Quelqu'un peut-il me donner des informations sur pourquoi les iframes sont moins sûrs et posent des problèmes, contrairement aux cadres normaux ? Et quelles sont les différences fondamentales ?

La façon dont je le vois, iframe est la voie à suivre.

0 votes

Jetez un coup d'œil ici .

4 votes

<frame> est déprécié en HTML5, vous ne devez donc plus l'utiliser.

78voto

rahul Points 84185

La différence est qu'une iframe est capable de "flotter" dans le contenu d'une page, c'est-à-dire que vous pouvez créer une page html et y placer une iframe. Cela vous permet d'avoir une page et d'y placer directement un autre document. A frameset vous permet de diviser l'écran en différentes pages (horizontalement et verticalement) et d'afficher différents documents dans chaque partie.

Lire Résumé de la sécurité des IFrames .

0 votes

Il semble que ces problèmes de sécurité ne s'appliquent pas à moi, car je fais directement référence à un site sécurisé (auquel je fais entièrement confiance). Je ne vois pas comment un pirate pourrait saboter ce site.

21voto

Dan Herbert Points 38336

IFrame est simplement un "cadre interne". La raison pour laquelle elle peut être considérée comme moins sûre (que de ne pas utiliser de cadre du tout) est que vous pouvez inclure du contenu qui ne provient pas de votre domaine.

Tout cela signifie que vous devez faire confiance à tout ce que vous incluez dans un iFrame ou un cadre ordinaire.

Les frames et les IFrames sont tout aussi sûres (et peu sûres si vous incluez du contenu provenant d'une source non fiable).

1 votes

Vous pouvez également inclure du contenu qui ne provient pas de votre domaine dans des cadres réguliers.

0 votes

@David, j'aurais probablement dû le dire explicitement. Je suppose que je l'ai sous-entendu mais que je ne l'ai jamais vraiment dit. Je vais mettre à jour ma réponse pour que ce soit plus clair. Merci.

1 votes

Le "i" de "iframe" signifie en fait "inline".

14voto

Ivo Points 2211

iframe sont très utilisés pour inclure des pages complètes. Lorsque ces pages sont hébergées sur un autre domaine, des problèmes de cross side scripting et autres apparaissent. Il existe des moyens de résoudre ce problème.

Les cadres étaient utilisés pour diviser votre page en plusieurs parties (par exemple, un menu de navigation à gauche). Leur utilisation n'est plus recommandée.

1 votes

"Les cadres sont utilisés pour diviser votre page en plusieurs parties. Comme par exemple un menu sur la gauche." Les années 90 ont appelé et veulent que tu reviennes. Vous devriez no utiliser des cadres pour cela. Il était courant de faire cela il y a quelques années, mais maintenant vous devriez la plupart du temps utiliser des includes et des css côté serveur pour créer votre menu. Cela permet une bien plus grande flexibilité sur le long terme. velvetblues.com/web-development-blog/ a quelques informations sur le sujet.

16 votes

Je sais :) Je voulais juste expliquer à quoi servaient les cadres (il y a 100 ans ;) ).

7voto

James Points 40024

Les seules raisons qui me viennent à l'esprit sont en fait dans le l'article du wiki auquel vous faites référence pour en mentionner quelques-uns...

"Le système "Verified by Visa" a suscité quelques critiques, car il est difficile pour les utilisateurs de faire la distinction entre les cartes légitimes Visa et un site d'hameçonnage frauduleux."

"en 2008, la plupart des navigateurs web ne fournissent pas un moyen simple de vérifier le certificat de sécurité pour le contenu d'un iframe"

Si vous lisez le Critique section dans l'article, il détaille toutes les failles de sécurité potentielles.

Sinon, la seule différence est le fait qu'un IFrame est un cadre en ligne et un Cadre fait partie d'un Frameset . Ce qui signifie plus de problèmes de mise en page qu'autre chose !

6voto

khan iffat Points 21

Le cadre en ligne n'est qu'une "boîte" et vous pouvez le placer n'importe où sur votre site. Les cadres sont un ensemble de "boîtes" assemblées pour former un site comportant plusieurs pages.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X