5

で の のページをabc.comホストしている Web サイト を使用しています。 内のページが の別のページに対して AJAX リクエストを実行していますが、リクエストがキャンセルされていることがわかります。 iframe123.com
iframe123.com

私が間違っていない限り(インターネット上でこれに関する公式情報を見つけていません)、この呼び出しはクロスドメイン リクエストではないため、正常に機能するはずです。

親フレームが別のドメインにあるという事実は、iframe独自のサーバーへの AJAX 要求の実行を本当に妨げますか?

4

1 に答える 1

3

IFRAME は、独自の元のサイト (同じソース URL) に対して ajax 要求を行うことができる必要があります。ただし、REQUEST イベントが親ではなく IFRAME から発生していることを確認してください。

私の最初の推測では、IFRAME をロードしてから、親 (JS) を介してそれにアドレス指定 (イベントを発生) させて、ajax 呼び出しをトリガーする何かを実行/取得/設定させます。つまり、IFRAME ドメインから同じドメインへのリクエストがキャンセルされる理由として最も可能性が高いのは、ターゲット ドメイン コードの外部から発信されたものとしてブラウザに認識されるためです。

REQUEST イベントは、ユーザーが IFRAME 内の何かをクリックするか、イベントを発生させるIFRAME 自体のコードから有機的に生成される必要があります。

言い換えれば、IFRAME がその JS/コードでイベント/ajax を起動する機能を持っている可能性があるという理由だけで、通常は、JS/コードを介して直接 ajax/JS を参照する親を持つことは許可されません。IFRAME は、その負荷パラメーター (おそらく URL 値) に基づいてそれを行うようにコーディングされている必要があります。または、ユーザーが物理的に何かをクリックしてアクションを実行し、そのドメインでユーザー生成イベントを作成する必要があります。

もちろん、これは、親と iframe の間の対話性に関して何を理解できるかについて、ブラウザーとバージョンによって少し異なります。しかし、厳密で最新のブラウザは、js を介して iFrame での安全でないやり取りを偽装しないようにします。

より良い回答を得るには、何を行っているか、何を取得しているかについて、より詳細な情報を提供する必要があります。

于 2013-04-02T00:50:12.357 に答える