web-dev-qa-db-ja.com

iframeクロスドメインの問題を解決する方法

別のドメインのWebページを表示する必要があるWebページを作成しています。

たとえば、私のウェブhtmlには、2つの<div>タグ。

のような:

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

問題を解決するには、<iframe><embed>または<object>タグですが、これによりクロスドメイン問題が発生します。したがって、他のドメインのWebページを表示するために使用することはできません。彼らは私がそれを使用することを許可していません。

したがって、たとえば:

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

機能しません。 Webページにstackoverflow.comを表示できません。なぜなら、stackoverflowはこれを拒否するからです。

私はこれらの問題で多くのものを検索しました。しかし、それらはajaxまたは[〜#〜] jsonp [〜#〜]にすぎません。 iframeではありませんでした。

問題を解決する解決策はありますか?または、これを実装することは不可能ですか?

9
user7159879

埋め込むドメインを制御して、そのCORSポリシーを削除/修正する必要があります。ドメインがクロスオリジンリクエストを明示的にブロックしている場合、それに対してできることは何もありません。

これは、あなたが望むサイトをだれもハイジャックするのを防ぐために使用されます(bettergoogle.comの広告の上にiframeでフルスクリーンのGoogleを実行できます)。

このページでは、クロスオリジンに関するより多くの洞察が得られます

14
xShirase

Iframeでドメインの所有者の許可を持っている場合、これを実行できるように、クロスオリジンポリシーにドメインを追加するように依頼することができます。

あなたのサイトにコンテンツを表示する許可がない場合、現代のブラウザはそのような非倫理的な動作をサポートしておらず、あなたがしようとしていることを行う方法はありません。

2
daveyfaherty