问题描述
我正在尝试使此代码工作,并且不知道为什么它不能在本地工作。我在CodePen.io上尝试过相同的功能。
I am trying to make this code work and don't know why is it not working locally. I tried the same on CodePen.io and it works.
<html>
<head>
<title>Voice API</title>
</head>
<body>
<button onClick="func()">Click Me</button>
<script>
function func()
{
alert('Hello');
var recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.onresult = function(event)
{
alert(event.results[0][0].transcript);
}
recognition.start();
}
</script>
</body>
有任何建议吗?
推荐答案
您可以尝试添加以下代码段以查看正在生成的错误。
You could try adding the following snippet to see what error is being generated.
recognition.onerror = function(event) {
console.log(event.error);
});
有可能吐出'不允许',这通常意味着用户代理不允许出于安全,隐私或用户偏好的原因而发生的任何语音输入(因为您通过文件在本地运行它://)
Chances are its spitting out a 'not-allowed' which generally means that the user agent is not allowing any speech input to occur for reasons of security, privacy or user preference (as you're running it locally through a file:// )
您是否尝试过提供该页面在本地Web服务器下,如(IIS或Node)?
Have you tried serving the page under a local Web Server such as (IIS or Node) ?
这篇关于HTML5 Web Speech API无法在本地运行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!