Youtube Player API引发404

时间:2014-06-12 06:31:07

标签: javascript html api youtube http-status-code-404

这一直困扰我一段时间,我正在使用这个通用脚本创建一个播放器

var player = new YT.Player(videoArray[0], { videoId : videoArray[0], events : { 'onStateChange' : onPlayerStateChange } });

我只用一个简单的console.log来设置回调函数,问题是当我改变控制台抛出的玩家的状态时

https://www.youtube.com/get_video?noflv=1&video_id=ghUA ....从文件html5player-en_US-vfloyxzv5.js获取404:我认为这是由YouTube Iframe API加载的。

任何ideeas或posibile解决方案都会受到极大的影响。

3 个答案:

答案 0 :(得分:4)

可悲的是,这是您使用Youtube Player API应对的众多小事之一。 我认为没有任何解决方案,我们只能等待Youtube修复。

已经创建了一个错误报告,请vote for it

Youtube播放器每周二更新。希望这将固定某天

答案 1 :(得分:2)

我发现我做错了什么,我发布这可能会帮助一路上的人。

由于videoArray持有jQuery对象,我使用这段代码使其全部工作。

    if(isYouTubeVideo) {
        videoID = iframeSrc.substr(baseUrlLength);
    }

    videoArray[i] = {};
    videoArray[i].id = videoID;

    jQuery.ajax({
    dataType: 'JSON',
    url: 'https://gdata.youtube.com/feeds/api/videos/' + videoID + '?v=2&alt=json'
    })
    .done(function(data) {
        videoArray[i].title = data.entry.title.$t;
    });

    jQuery(this).attr('id', videoID);
    playerArray[i] = new YT.Player(videoArray[i].id, { event : //Events here})

我希望这有助于某人:)

答案 2 :(得分:0)

我为某些视频获得此信息。根据我的经验, get_video 404并不重要 - 视频仍然可以正确加载。

但是有一个随机的警告;如果您在连接到Mac Safari Web Inspector的iPhone上运行此操作,404会导致视频停止加载。这让我有了几个小时的乐趣!