我一直在使用webkitspeechrecognition的几个页面进行原型设计。我很快就知道你无法从文件中加载这些文件,你必须从网络服务器上提供它们。我正在使用osx所以我只是将我的文件移动到已经运行并启用的本地apache。这很好用了很长一段时间。
出于某种原因,我的网页都没有正常工作会提示我拒绝/允许使用麦克风。我甚至从另一个网络服务器复制了一个现有的工作页面,如果我从http://localhost/speech.html加载它,它就不会提示。它会跳过提示并转到我的recognition.onerror处理程序并记录“not-allowed”
但是,如果我从http://127.0.0.1/speech.html加载相同的页面(或我的任何其他原型),它可以正常工作。这让我觉得我不小心缓存了一个像“总是拒绝”之类的反应。我想我清除/重置了我所有的Chrome设置,但我仍然有同样的行为。 127.0.0.1将正确提示,但localhost根本不会提示。
chrome可能会存储一些我需要清除的其他设置吗?
答案 0 :(得分:1)
您的麦克风设置可能存储在chrome://settings/contentExceptions#media-stream-mic
。您可以查看已保存权限的网站。
答案 1 :(得分:1)
在chrome中请求getUserMedia权限的工作原理如下: