2017-08-08 22 views
11

バージョン60以降のWebkitSpeechRecognitionは、HTTPS以外のWebサイトでは無効になっています。 これは主に開発目的の主要な問題です。このセキュリティ機能をバイパス/無効にする方法はありますか?Chromeバージョン60 SpeechRecognition

あなたのマイクにアクセスするかどうか聞いてきたポップアップは、HTTPでは表示されませんが、HTTPS上に表示されます。

DEV用のHTTPSを設定するのは簡単ではないので、私はこれを回避する方法が本当に必要です。

答えて

1

これはローカルで試してみましたが、HTTPSなしでうまく動作しました。ファイルがファイルシステムから直接提供されていても静的ファイルサーバ(私はpython3 -m http.serverを使用しています)の助けを借りて動作させると、うまく動作しません。

希望すると助かります!

<html> 
    <head> 
     <title>Teste</title> 
    </head> 
    <body> 
     <button id="btn">capture</button> 
     <script src="https://code.jquery.com/jquery-3.2.1.min.js"> </script> 
     <script> 
      $(document).ready(function(){ 
       var recognition = new webkitSpeechRecognition(); 
       recognition.onresult = function(event) { 
        console.log(event) 
       } 
       var started = false; 
       $('#btn').click(function(){ 
        if (started){ 
         recognition.stop(); 
         $(this).html('capture'); 
         started = false; 
        } 
        else{ 
         recognition.start(); 
         started = true; 
         $(this).html('stop'); 
        } 
       }); 
      }) 
     </script> 
    </body> 
</html> 

EDIT:jQueryは必要ありません。それは

2

短い答え、ノー :-)私の単なる古い習慣です。無効にすることはできません。

しかし、でも、Windowsの場合はIISのlocalhostにホストすることができます。それを行う方法に関するチュートリアルがありますhere。 IISに登録したら、ブラウザで閲覧できるようにいくつかのアクセス許可を追加する必要があります(localhost)。

Linuxを実行している場合は、Apache2をインストールして/var/www/public_html/{websitename}.にドロップするだけで、ブラウザからlocalhostにアクセスするだけです。 Apache hereのインストールに関するチュートリアルがあります。

ローカルファイルを操作するときに、マイクをブラウザで操作できるようにする方法があります。 localhostを設定すると、操作が比較的簡単です。

-1

あなたのdevサーバーで無料のhttps証明書(letsencryptなど)を使用するだけではどうですか?私は今それが無料であることを意味し、あなたはhttpsを超えて開発することができます。

関連する問題