2009-07-10 8 views
4

swfがページに埋め込まれていて、でなく、ブラウザでローカルにキャッシュされたの場合、swfに対する2つの要求がブラウザによって発生します。 Here is a simple exampleFirefoxが埋め込みswfのリクエストを2回発行するのはなぜですか?

最初の要求は予期した200 OKを返し、最初の要求の完了後に2番目の要求が304 Not Modifiedをトリガーし、ファイルがローカルにキャッシュされていることを示します。

なぜ2 ndリクエストが解雇されたのですか?どのように防止できますか?

答えて

1

私は、これはまた、Firebugのを実行することによってトリガすることができると信じて - あなたはFirebugのを無効にしている間、LiveHTTPHeaders(またはチャールズのようないくつかの他のhttpスニッフィングアプリ)を使用して、ブラウザのリクエストをチェックしてみてください。

+0

ファイアウォールが無効になっており、1回のリクエストだけが起動されました。 http://www.dweebd.com/examples/double-swf-request/single-request.png –

1

これは私にとっても同様です。

最初は、Firefoxのバグが原因だと思っていました。 FAQの質問#16をthis pageに載せてください。しかし、彼らが参照しているバグは修正されているようです。

私はSWFObject 2.2を使用してSWFを埋め込んだ自分のウェブサイトのいくつかを見ました。二重GETは起こらなかった。私の違いは、私のコードでは、bodyの代わりにページの<head>にswfobject.embedSWFを呼び出しているということです。スクリプトを頭に置くことは、SWFObject 2.2のドキュメントが推奨するものです(これはSWFObjectの古いバージョンから少し離れたものです)。だからここ

は、私はあなたがいた場合、私は試してみたものです:

  1. google.load( "swfobject"、 "2.2")を削除し、直接SWFObjectスクリプトが含まれています。
  2. swfobject.embedSWFコードをページの先頭に移動します。
+0

swfobjectを直接インクルードし、ドキュメントので埋め込み呼び出しを呼び出すこの更新された例でも、私は依然としてダブルリクエストを参照しています。 http://www.dweebd.com/examples/double-swf-request/embed-in-head.html –

2

私はそれを考え出したと思います。私はFirefoxのバグレポートをより慎重に読んでいますが、これは私がインストールしたAdBlock Plusに起因するようです。最初に、更新されたページでバグがまだ発生していることを確認し、もう一度それを再現しました。その後、私はAdBlock Plusを無効にし、同じテストを試みました。二重の要求はもはや起こっていなかった。したがって、その拡張機能がインストールされている場合、または同様の拡張機能がインストールされている場合は、それが原因である可能性があります。

Thisは、プラグインが二重インスタンス化されていることに関するバグレポートであり、thisは、AdBlock Plusが原因であるというバグレポートです。

+0

私はあなたが唯一のリクエストを見ている場合は、単純にキャッシュされたswfファイルを持っているかもしれないと思います。あなたが見ている1つのリクエストが200 OKであることを確認しましたか?私は二重の要求を参照し、AdBlockをプラス(またはインストールされているすべての奇妙なプラグイン) http://www.dweebd.com/examples/double-swf-request/no-weird-plugins.png –

+0

のFirefoxのバージョンですを持っていませんあなたは使っていますか? – Jacob

関連する問題