0

小さなswfプレーヤーがJSPページに埋め込まれています。プレーヤーはChromeとFFで正常に動作し、IEでも動作しますが、最初のアクセスでのみ動作します。最初のアクセス後にオーディオファイルを再度開くと、オーディオは再生されません。一時停止を押してからもう一度再生します。もう一度機能させるには、ブラウザーのキャッシュをクリアする必要があります。

ブラウザのキャッシュを防止しようとしましたが (Pragma,Cache-Control ... を設定)、うまくいきませんでした。

4

1 に答える 1

1

これを修正する方法は2つあります。

mp3を要求するコードを変更するか、mp3ファイルを提供するサーバーのコードを変更します。

1-リクエストコードを変更して、リクエストするたびにキャッシュへの異なるリクエストのように見えるようにします。これはあなたのmp3プレーヤーに依存します。一部のプレイヤーはこれを許可し、他のプレイヤーは許可しません。

<param name="url-to-mp3" value="mymp3.mp3?<%=System.currentTimeMillis() %>" />

2-サーバーコードを変更します。元。サーブレットで次のヘッダーを追加して、mp3をキャッシュしたくないことをブラウザに通知しようとしています。

        // Set to expire far in the past.
        response.setHeader("Expires", "Sat, 6 May 1995 12:00:00 GMT");
        // Set standard HTTP/1.1 no-cache headers.
        response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
        // Set IE extended HTTP/1.1 no-cache headers (use addHeader).
        response.addHeader("Cache-Control", "post-check=0, pre-check=0");
        // Set standard HTTP/1.0 no-cache header.
        response.setHeader("Pragma", "no-cache");

これがお役に立てば幸いです。

于 2012-12-03T15:31:05.893 に答える