Nie można uzyskać dostępu do filmu w YouTube za pośrednictwem interfejsu API YouTube JS wewnątrz rozszerzenia Google Chrome, ale można również korzystać z JS Fiddle
Próbuję zrozumieć logikę tego, co powoduje mechanizm blokowania odtwarzania wideo w YouTube.
Tutaj próbuję odtworzyć utwór zablokowany przed osadzonym odtwarzaniem wewnątrz JS Fiddle. Zauważ, że to działa:
Teraz używam dokładnie tego samego kodu w rozszerzeniu Google Chrome:
http://www.meomixes.com/ jeśli chcesz kliknąć, aby pobrać rozszerzenie.
http://www.meomixes.com/Test.crx do bezpośredniego połączenia z rozszerzeniem.
Zauważ, że nie mogę odtworzyć tego samego filmu z YouTube:
Zastanawiałem się, jakie były moje opcje debugowania dla tego scenariusza. Czy ktoś ma jakieś pomysły na temat tego, co powinienem zbadać? Próbowałem zażądać następujących uprawnień w moim manifeście, ale nie miało to żadnego skutku:
"permissions": [
"http://*.youtube.com",
"https://*.youtube.com",
"http://*.google.com",
"https://*.google.com"
]
Umieściłem tutaj pełne źródło Test.crx:http://www.meomixes.com/Test.zip Załadować:
Rozsunąć suwakPrzejdź do strony rozszerzenia Google Chrome i włącz „Tryb programisty”Kliknij „Załaduj rozpakowane rozszerzenie” i wskaż rozpakowany katalog.Zauważ, że film nie jest odtwarzany.Ostatnia uwaga: utwór gra wesoło w poście na Facebooku.
EDYCJA: Znalazłem to:http://gdata.youtube.com/feeds/api/videos/UfESt2KdOdc?v=2&prettyprint=true dla danego filmu. Łączy się z:http://apiblog.youtube.com/2011/12/understanding-playback-restrictions.html.
Właśnie opierając się na pierwszej odpowiedzi. Zasadniczo istnieje ustawienie o nazwie „syndykacja”, które uniemożliwia odtwarzanie na „urządzeniach zewnętrznych”, takich jak telewizory i rozszerzenia Google Chrome.
Szukasz sposobów na obejście tego problemu teraz.