2

我有这样的代码

function initAudio() {
    if (!navigator.webkitGetUserMedia)
        return(alert("Error: getUserMedia not supported!"));

    navigator.webkitGetUserMedia({audio:true}, gotStream, function(e) {
            alert('Error getting audio');
            console.log(e);
        });
}

window.addEventListener('load', initAudio );

我在控制台中的输出是这样的

NavigatorUserMediaError {code: 1, PERMISSION_DENIED: 1} 

为什么权限拒绝我?我尝试使用此页面的源代码制作录音机http://webaudiodemos.appspot.com/AudioRecorder/index.html

4

1 回答 1

4

如果您从保存在计算机上的文件而不是通过 Web 服务器运行代码,则 chrome 有时会因为其安全策略而出现允许访问的问题。

尝试的两个选项是

  1. 将其放在网络服务器上
  2. 如果您使用的是 mac,请使用以下命令通过终端打开 chrome

    /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --allow-file-access-from-files

于 2013-02-26T17:16:56.437 回答