Potrzebowałem zrobić prostą stronkę która zachowuje się jak playlista, ale napotkałem dziwny problem, a mianowicie niektóre filmiki wyrzucają "Film niedostępny". Rozwiązanie jakie znalazłem to odpalenie tego z https
i faktycznie to rozwiązanie działa, jednak nie widzę sensu w odpalaniu czegoś tak prostego jako web app lub za pomocą jakiegoś serwera HTTP.
Więc, jak miałbym nie wiem... zfakeować origin aby udawał https
dla stronki odpalanej po prostu z pliku index.html
?
chociaż może to potencjalnie byłoby jakieś security issue? xD
Kod po prostu odtwarza w pętli filmy na YT zdefiniowane w videos
.
<div id="player"></div>
<script src="https://www.youtube.com/player_api"></script>
<script>
var videos = ['dQw4w9WgXcQ']
var index = 0;
var player;
function onYouTubePlayerAPIReady() {
player = new YT.Player('player', {
height: '390',
width: '640',
videoId: videos[index],
events: {
'onReady': onPlayerReady,
'onStateChange': onPlayerStateChange
}
});
}
function onPlayerReady(event) {
event.target.playVideo();
}
function onPlayerStateChange(event) {
if(event.data === 0) {
MoveNext();
}
}
function MoveNext() {
if (index == videos.length - 1 || index < 0)
index = 0;
else
index++;
player.loadVideoById(videos[index]);
}
</script>
Zmiana: <script src="https://www.youtube.com/player_api"></script>
na http
nic nie pomogła.
*.localhost
(systemd ma to domyślnie).