【发布时间】:2018-02-23 01:39:44
【问题描述】:
由于 CORS 和第三方服务器的身份验证,我无法直接从 angularJS 加载音频文件,必须从 PHP 后端加载。这是我的 PHP 服务器代码,用于提供从第三方服务器下载的音频文件:
header('Pragma: public'); // required
header('Content-Type: audio/mpeg');
header('Content-length: ' . filesize($file));
header("Content-Transfer-Encoding: binary");
header('Content-Disposition: filename="' . basename($file));
header('X-Pad: avoid browser bug');
header('Cache-Control: no-cache');
$len = readfile($file);
exit();
这是我的 angularJS 客户端代码:
var blob = new Blob([response], { type: 'audio/mpeg' });
var url = window.URL.createObjectURL(blob);
var audio = new Audio(url);
audio.play();
但是它失败并出现异常消息:
DOMException: Failed to load because no supported source was found.
感谢任何建议和见解。
【问题讨论】:
标签: php angularjs audio blob audio-streaming