web-dev-qa-db-fra.com

comment résoudre le problème de domaine inter-domaines iframe

Je crée une page Web qui doit afficher la page Web d'un autre domaine.

Par exemple, dans mon HTML Web, il y a deux balises <div>.

Comme :

<html>
<head></head>
<body>
   <div>
      <p> hello world </p>
   </div>
   <div>
      <!-- other domain's web page comes here -->
   </div> 
</body>
</html>

Pour résoudre mon problème, je devrais utiliser les balises <iframe>, <embed> ou <object>, mais cela pose le problème cross domain . Je ne peux donc pas l'utiliser pour afficher la page Web d'un autre domaine. Ils ne me permettent pas de l'utiliser.

Donc, par exemple:

<iframe src="http://stackoverflow.com"></iframe>

Ça ne marche pas Ma page Web ne peut pas afficher stackoverflow.com . Parce que stackoverflow nie ceci.

J'ai cherché beaucoup de choses avec ces problèmes. Mais ils ne sont que ajax ouJSONP. Ce n'était pas iframe .

Existe-t-il des solutions pour résoudre mon problème ?? Ou est-il impossible de mettre en œuvre cela?

5
user7159879

Vous devez contrôler le domaine que vous souhaitez intégrer pour supprimer/modifier sa stratégie CORS. Si le domaine a explicitement bloqué les demandes Cross-Origin, vous ne pouvez rien y faire.

Ceci est utilisé pour éviter à quiconque de détourner le site de votre choix (vous pourriez avoir un Google en plein écran dans un iframe diffusant vos annonces au-dessus de bettergoogle.com, etc.).

Cette page vous donnera plus d'informations sur l'origine croisée

7
xShirase

Si vous disposez de l'autorisation du propriétaire du domaine dans l'iframe, vous pouvez leur demander d'ajouter votre domaine à leurs règles d'origine croisée afin de pouvoir le faire.

Si vous n'êtes pas autorisé à afficher leur contenu sur votre site, je suis heureux de dire que les navigateurs modernes ne prennent pas en charge un comportement aussi contraire à l'éthique et qu'il est impossible de faire ce que vous essayez de faire.

1
daveyfaherty