webkitspeechrecognition no longer prompts for permission

我只是一个虾纸丫 提交于 2020-01-05 04:57:25

问题


I've been prototyping a few pages that use webkitspeechrecognition. I learned quickly that you cannot load these from a file, you have to serve them from a webserver. I'm using osx so I just moved my files to the local apache that was already running and enabled. This worked fine for quite a while.

For some reason, none of my pages that were working fine will prompt me to deny/allow the microphone usage. I even copied an existing working page from another webserver and if I load it from http://localhost/speech.html it will not prompt. It skips the prompt and goes to my recognition.onerror handler and logs "not-allowed"

However, if I load the same page (or any of my other prototypes) from http://127.0.0.1/speech.html it works fine. This made me think I had accidentally cached a response like "always deny" or something. I think I cleared/reset all my chrome settings but I'm still getting the same behavior. 127.0.0.1 will properly prompt, but localhost will not prompt at all.

Where might chrome be storing some additional settings that I need to clear?


回答1:


Your microphone settings might be stored at chrome://settings/contentExceptions#media-stream-mic. You can view the websites that have permissions saved there.




回答2:


getUserMedia permissions requesting in chrome currently works something like:

  • If you have a request by http, getUserMedia will only remember the permissions for that session. If you go back to the same page. it asks again.
  • If you do the same request by https, once you set the permissions, you always have permissions.
  • My memory is that an exception is granted for http://localhost/... for debugging purposes. In this case, you don't need to repeatedly grant permissions.
  • If you use http and 127.0.0.1/, I think no exception is made.

http://www.html5rocks.com/en/tutorials/getusermedia/intro/



来源:https://stackoverflow.com/questions/29330977/webkitspeechrecognition-no-longer-prompts-for-permission

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!