17

preload 属性が「auto」に設定された html5 video 要素がたくさんあります。それらは正常にロードを開始しますが、キャッシュに問題がある可能性があると思います。ページをリロードするたびに (キャッシュをクリアせずに)、最初からやり直すからです。

Firebug で [ネットワーク] パネルを確認したところ、他のすべて (画像とファイル) には「304 変更されていません」というメッセージが表示され、ビデオ (およびオーディオ) ファイルには「206 部分的なコンテンツ」というメッセージが表示されていました。重複したエントリで。

キャッシュがクリアされた状態でページがロードされると、予想される「200 OK」応答ではなく、「206 部分コンテンツ」応答も重複したエントリに表示されます。

これは、ビデオおよびオーディオ要素の通常の動作ですか? そうでない場合、どのように修正できますか?

4

3 に答える 3

20

この部分コンテンツ コード (206)、クライアントが範囲を要求したときにサーバーから送信されることがあります (たとえば、「ビデオ データの最初の 2MB をください」)。

未使用のリソースをフェッチしないように、チャンクでデータをダウンロードするために不可欠です。Range(オンラインで完全なビデオを見ることはめったにありません。)ヘッダーの発信要求を見てください。

ステータス コード (RFC2616 - HTTP/1.1)を参照してください( 2xx コードは「成功」を意味すること注意してください)。

10.2.7 206 部分的なコンテンツ:

サーバーは、リソースに対する部分的な GET 要求を実行しました。要求には、目的の範囲を示す Range ヘッダー フィールド (セクション 14.35)含まれている必要があり、要求を条件付きにするために If-Range ヘッダー フィールド (セクション 14.27) が含まれている場合があります。

そして、Range ヘッダーセクションから:

サーバーが Range ヘッダーサポートし、指定された範囲がエンティティに適している場合

  • 無条件の GET に Range ヘッダーが存在すると、GET が成功した場合に返される内容が変更されます。つまり、レスポンスは 200 (OK) ではなく 206 (Partial Content) のステータス コードを伝送します

ただし、キャッシングや ETag の複雑さ、または FireFox で何が期待できるかはわかりません。

于 2012-03-18T01:54:57.757 に答える
0

私のローカル開発マシンの Firefox では、サーバーがそれらを使用するように構成されていない限り、.webm ビデオを再生できませんでした。Firebug は 206 を表示しますが、何も表示されません。これは、追加することで解決できます

AddType video/webm .webm

あなたの.htaccessに。

于 2013-10-08T08:05:36.823 に答える