最近在處理項目時發現新版谷歌瀏覽器不支持http協議調用本地攝像頭,代碼在本地運行下可以訪問到攝像頭,部署上線后網頁中調用攝像頭時失敗。
對比本地和上線的區別后發現本地代碼部署在IIS上時,訪問是http:localhost而上線中是http+ip,
專門在網上查了一下,發現
1、http協議的網站的安全原因,不能訪問本地的麥克風
2、允許打開麥克風的請求有http://localhost/以及https請求。
解決方法:
1、將網站部署成https請求
2、打開谷歌瀏覽器,在地址欄輸入chrome://flags,

設置后重啟瀏覽器,輸入網址可以正常調用攝像頭。
3、右鍵點擊Chrome桌面快捷方式,打開屬性
在 快捷方式頁-目標 中的最后輸入
--unsafely-treat-insecure-origin-as-secure="http://example.com"
http://example.com為要調用攝像頭的網址
最后,本人親測方法二最好用,方法三不一定有用,本文僅供參考。
