我正在使用Google的WebSpeech API,该API位于以下网站:https://developers.google.com/web/updates/2013/01/Voice-Driven-Web-Apps-Introduction-to-the-Web-Speech-API
在我的Windows机器上使用Python的http.server,
它的工作没有任何问题:
我上传完全相同的文件,相同的API,但它不工作在我的CentOS远程服务器抛出一个“不允许”错误的麦克风权限:
我认为这个问题可能与http服务器有关。所以我尝试了Apache Httpd,Python http.server和Nginx。它们都不起作用。
知道是什么挡住了麦克风吗,谢谢
3条答案
按热度按时间o8x7eapl1#
我找不到支持这一点的文档,但根据我自己的经验,我可以确认,只有在网站上安装SSL证书后,Chrome才停止阻止它请求麦克风访问。
cngwdvgl2#
我也经历了
not-allowed
-试图从跨源iframe内的Chrome访问麦克风。通过将allow="microphone;"
添加到iframe解决:字符串
注意:父页面和iframe页面也需要使用HTTPS
参考:https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-permissions-in-cross-origin-iframes
wqsoz72f3#
我也遇到过同样的问题(抛出
not-allowed
),但我使用的是HTTPS。在我的例子中,结果是你不能从
iframe
获取语音或启用麦克风访问。同样的代码在iframe中不显示时正常工作。