6

IE と Chrome では、swf オブジェクトが URL (たとえば、mp3 ファイル) を要求する場合、要求で HTTP_REFERER も渡します。HTTP_REFERER は、swf オブジェクトの URL になります。

これは Firefox では発生しません。HTTP_REQUEST は常に空です。

これは、swf コードのオプション、フラッシュのバグ、またはブラウザーの制限ですか? そして、これを克服する方法はありますか?

前もって感謝します。

4

1 に答える 1

3

ここでも同じ問題があります。いくつかの調査の結果、@Amalgovinus が以前に述べたように、mozilla の 3 年前のバグのようです。

これに対する解決策は、フラッシュ内で GET リクエストの代わりに POST リクエストを実行することです。リクエストに沿って送信するデータがない場合、フラッシュは自動的に POST リクエストを GET に変更するため、偽のデータも渡す必要があります。これを機能させるためのフラッシュ コード サンプルを次に示します。

var url = "http://exemple.com/myNotHotlinkedSong.mp3";
var myRequest:URLRequest = new URLRequest (url);
myRequest.method = URLRequestMethod.POST;
// add some data to the request to force the use of POST inside flashPlayer
myRequest.data = "fake=fake";

.htaccess を使用して FF でもホットリンクを回避できるようになったことをうれしく思います。

于 2011-08-24T14:23:12.823 に答える