Soru Bir HTML5 video etiketinin kaynağı olarak bir MediaSource nesnesi eklemeye çalışırken "Yerel kaynağı yüklemeye izin verilmiyor" hatası alıyorsunuz


Ben almaya çalışıyorum bu çalışmak için örnek. Bağlantıyı tıklattığımda iyi çalışıyor. Ancak yerel makinemde HTML dosyasını indirmeye çalıştığımda ve aynı şeyi denediğimde, bu hatayı atıyor.

Yerel kaynağı yüklemeye izin verilmiyor: blob: null / 6771f68d-c4b8-49a1-8352-f2c277ddfbd4

Soruna neden olan kod satırı şu,

video.src = window.URL.createObjectURL(mediaSource);

Bu kod satırı ne yapıyor, temel olarak video etiketi medya öğesinin kaynağını MediaSource nesnesine ayarlamaya çalışıyor. Çok fazla şans olmadan çeşitli permütasyonları denedim.

En son kararlı sürüm olan 28.0.1500.72 m Chrome Sürümünü kullanıyorum.

Herhangi bir işaretçi için minnettar olurum.


26
2017-07-16 17:15


Menşei


http: değil dosyadan çalıştırın: ... - dandavis
İşe yaradı! Dosyayı bir http sunucusuna yükledim ve iyi çalıştı. Bazı garip tarayıcı sorunu gibi görünüyor. @dandavis Teşekkürler! - Mathew
@dandavis bunu bir cevap olarak söylemelisiniz ki, kısaca söylediğiniz gibi bunu yapacağım. - Santiago Rebella
run it from http: not file Araçlar: Yerel olarak html dosyasını açmak yerine sayfayı bir http sunucusundan getir. Tarayıcı (makul olarak) yerel dosya erişimi için kısıtlamalara sahiptir, bu nedenle sayfa doğrudan klasörünüzden açıldığında, izin hatasını alırsınız.


Cevaplar:


@Dandavis'in dediği gibi, "dosyayı http: değil, dosyayı çalıştırın".

Bunu organizasyon uğruna bir aswer olarak gönderiyorum.

Yeni başlayanlar için: Http'den proje yürütmek, bir http sunucusuna sahip olmak anlamına gelir (apache veya basit bir düğüm gibi) http-sunucu) ve projenizi http: // localhost.


29
2017-10-01 00:28



Bunu nasıl yapacağım? benim örneğimde Medya Akışı'nı kaydediyorum ve bunu aynı instace'de bir Video Tag'e ayarlamaya çalışıyorum. - Victor Ferreira
@VictorFerreira Biliyorum geç kaldım, ama http çalışan bir http sunucusu (apache veya basit bir node http-server gibi) ve projenizi http: // localhost. Bu, "http dosyası değil" ifadesinin anlamıdır. Sorun şu ki, http (:) aracılığıyla açmak yerine, html dosyasını doğrudan açıyor olmanızdır. - Filipe Merker


kurmak http-sunucu npm komutunu kullanarak global olarak node.js sisteminizde önceden). CMD'de dosya klasörünüze gidin ve yazın http-sunucu. Uygulamanız çalışmalıdır localhost: 8080.


0
2018-01-21 06:57