1

mediaelements.jsを使用したMP3ファイルの再生に問題があります。AJAXリクエストで、MP3ファイルを取得し、オーディオsrcを設定します。

次のようなURLで実際のMP3を取得した場合:

http://host.com/real/path/tp/mp3

これを私のオーディオソースとして設定すると、プレーヤーはうまく機能します。

今...次のようにストレージフォルダからMP3を取得するスクリプトを介してMP3を要求すると:

$headers = array(
    'Content-Type' => File::mime(File::extension($mp3)),
    'Content-Length' => filesize($mp3),
    'Content-Transfer-Encoding'=>'',
    'Cache-Control' => 'must-revalidate, post-check=0, pre-check=0',
);

return Response::make(readfile($mp3), 200, $headers);

プレーヤーはMP3ファイルの再生を開始しますが、巻き上げることができません。:(

実際のMP3パスの応答ヘッダー:

HTTP/1.1 200 OK
Date: Tue, 26 Mar 2013 18:47:27 GMT
Server: Apache/2.2.16 (Debian)
Last-Modified: Tue, 26 Mar 2013 14:37:28 GMT
ETag: "8d4b852-7b7342-4d8d4dc53fa00"
Accept-Ranges: bytes
Content-Length: 8090434
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: audio/mpeg

MP3を送信するLaravelスクリプトの応答ヘッダー:

HTTP/1.1 200 OK
Date: Tue, 26 Mar 2013 19:02:33 GMT
Server: Apache/2.2.16 (Debian)
Content-Length: 6330826
content-transfer-encoding: binary
cache-control: must-revalidate, post-check=0, pre-check=0, private
Set-Cookie:     laravel_session=16f4d83c0ce0262a90df3a0229f8b8ba261eaad7%2BDZIBuW8nbRbBMT7Nvu0NGQ9Rfqaiu6SAS    1wGjYse; expires=Tue, 26-Mar-2013 20:02:33 GMT; path=/; httponly
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: audio/mpeg
4

1 に答える 1

0

次のヘッダーを設定する必要がありました。

"Accept-Range" => "bytes"

働くために。問題は修正されました。:)

于 2013-06-20T19:59:03.240 に答える