Skip to content
Mic and webcam test

Bagikan halaman ini

Panduan perbaikan · Tes mikrofon

Cara memperbaiki "SecurityError" dan "navigator.mediaDevices is undefined"

Browser hanya mengizinkan akses mikrofon dan kamera di halaman aman. Jika alamat diawali http:// bukan https://, atau halaman berada di frame tanpa izin, browser melempar SecurityError atau menyembunyikan navigator.mediaDevices sepenuhnya, yang menghasilkan "TypeError: Cannot read properties of undefined (reading getUserMedia)". Solusinya adalah memakai alamat aman.

Tekan tombol, izinkan akses, dan kami akan memeriksa perangkat Anda.

100% aman. Seluruh pemrosesan terjadi sepenuhnya di browser Anda. Audio, video, dan sinyal mikrofon Anda tidak pernah diunggah ke server atau direkam.

Daftar periksa perbaikan cepat

  1. 1Periksa bilah alamat. Halaman harus diawali https:// atau berupa localhost.
  2. 2Ubah http:// menjadi https:// pada alamat, atau buka kembali situs dari tautan aman.
  3. 3Jika Anda berada di dalam aplikasi atau tampilan tertanam, buka halaman di tab browser biasa.
  4. 4Izinkan mikrofon dan kamera untuk situs, muat ulang, lalu tekan Periksa lagi.
  5. 5Jika Anda mengelola situsnya, pasang sertifikat dan alihkan semua lalu lintas http ke https.

Mengapa browser mewajibkan konteks aman

Mikrofon dan kamera bersifat sensitif. Browser hanya menampilkannya dalam konteks aman agar penyerang di jaringan bersama tidak bisa menukar halaman dan memata-matai Anda. Halaman http biasa, alamat jaringan lokal seperti 192.168.x.x, dan banyak tampilan dalam aplikasi tidak memenuhi syarat, meskipun localhost memenuhi.

Kebijakan izin juga dapat memblokir perangkat untuk halaman di dalam frame. Halaman yang menampung harus mengizinkan mikrofon dan kamera untuk frame itu.

Daftar periksa developer

Sajikan lewat HTTPS dengan sertifikat valid, uji pekerjaan lokal di localhost, dan periksa window.isSecureContext sebelum memanggil getUserMedia. Untuk penyematan, setel allow="microphone; camera" pada iframe dan hindari sandbox yang menghapus izin. Tes mikrofon disajikan lewat HTTPS agar Anda bisa membandingkan.

Ingin pengujian lebih mendalam? Buka tes mikrofonGratis, berjalan di browser Anda, tidak ada yang diunggah.

FAQ

Pertanyaan umum

Mengapa navigator.mediaDevices undefined?

Halaman tidak berada dalam konteks aman, jadi browser menyembunyikan API media. Buka lewat HTTPS atau di localhost.

Apakah localhost dianggap aman?

Ya. Browser memperlakukan localhost sebagai aman, jadi Anda bisa mengembangkan tanpa sertifikat. Alamat lokal lain butuh HTTPS.

Apa itu SecurityError di getUserMedia?

Browser menolak karena halaman tidak aman, dimuat di frame terbatas, atau kebijakan melarang perangkat.

Apakah data saya aman di halaman http?

Hindari memakai mikrofon dan kamera di halaman http. Gunakan https agar halaman tidak bisa diubah saat transit.

Lanjut membaca