Skip to content
Mic and webcam test

شارك هذه الصفحة

دليل إصلاح · اختبار الميكروفون

كيف تصلح «SecurityError» و«navigator.mediaDevices is undefined»

لا تسمح المتصفحات بالوصول إلى الميكروفون والكاميرا إلا في الصفحات الآمنة. إذا بدأ العنوان بـ http:// بدل https://، أو كانت الصفحة في إطار بلا إذن، فإما يُصدر المتصفح SecurityError أو يخفي navigator.mediaDevices تمامًا، فينتج «TypeError: Cannot read properties of undefined (reading getUserMedia)». الحل هو استخدام عنوان آمن.

اضغط الزر واسمح بالوصول وسنفحص جهازك.

آمن بنسبة 100%. تتم المعالجة بالكامل داخل متصفحك. لا يُرفع صوتك أو صورتك أو بث الميكروفون إلى أي خادم ولا يُسجَّل أبدًا.

قائمة الإصلاح السريع

  1. 1انظر إلى شريط العنوان. يجب أن تبدأ الصفحة بـ https:// أو تكون localhost.
  2. 2غيّر http:// إلى https:// في العنوان، أو أعد فتح الموقع من رابط آمن.
  3. 3إن كنت داخل تطبيق أو عرض مضمَّن، فافتح الصفحة في تبويب متصفح عادي.
  4. 4اسمح بالميكروفون والكاميرا للموقع، وأعد التحميل، ثم اضغط افحص مرة أخرى.
  5. 5إن كنت تدير الموقع فثبّت شهادة وأعد توجيه كل حركة http إلى https.

لماذا تشترط المتصفحات سياقًا آمنًا

الميكروفون والكاميرا حساسان. لا تتيحهما المتصفحات إلا في سياق آمن حتى لا يستطيع مهاجم على شبكة مشتركة استبدال الصفحة والتجسس عليك. صفحات http العادية وعناوين الشبكة المحلية مثل 192.168.x.x وكثير من العروض داخل التطبيقات لا تستوفي ذلك، بينما يستوفيه localhost.

قد تحجب سياسة الأذونات الجهاز عن صفحة داخل إطار. على الصفحة المستضيفة أن تسمح بالميكروفون والكاميرا للإطار.

قائمة تحقق للمطورين

قدّم الموقع عبر HTTPS بشهادة صالحة، وجرّب العمل المحلي على localhost، وتحقق من window.isSecureContext قبل استدعاء getUserMedia. في التضمينات اضبط allow="microphone; camera" على iframe وتجنب البيئات المعزولة التي تزيل الإذن. يُقدَّم اختبار الميكروفون عبر HTTPS لتقارن.

تريد اختبارًا أعمق؟ افتح اختبار الميكروفونمجاني، يعمل داخل متصفحك، ولا يتم رفع أي شيء.

الأسئلة الشائعة

أسئلة شائعة

لماذا navigator.mediaDevices غير معرّف؟

الصفحة ليست في سياق آمن، فيخفي المتصفح واجهة الوسائط. افتحها عبر HTTPS أو على localhost.

هل يُعد localhost آمنًا؟

نعم. تعامل المتصفحات localhost كآمن، فيمكنك التطوير بلا شهادة. أما العناوين المحلية الأخرى فتحتاج HTTPS.

ما هو SecurityError في getUserMedia؟

رفض المتصفح لأن الصفحة غير آمنة أو حُمّلت في إطار مقيّد أو لأن سياسة تمنع الجهاز.

هل بياناتي آمنة في صفحة http؟

تجنب استخدام الميكروفون والكاميرا في صفحات http. استخدم https حتى لا يمكن تعديل الصفحة أثناء النقل.

تابع القراءة