2016-02-12 37 views
0

我收到有關YouTube iFrame API中設置的標頭的錯誤。我不相信這是以前發生的。YouTube iFrame API無法在iPhone上加載視頻

Refused to set unsafe header "Origin" 
Wdwww-embed-player.js:225:275 
$dwww-embed-player.js:228:375 
(anonymous function)www-embed-player.js:1267 
Jmwww-embed-player.js:870:162 
Gqwww-embed-player.js:1266:557 
wrwww-embed-player.js:1302:197 
(anonymous function)F1CbO4TLzgI:9:14691 

這似乎只發生在iPhone上(包括Chrome和Safari)。我在最新的iOS(9.2.1)

這是發生的最後一個錯誤代碼:

//ln 1503 
function Wd(a, b, c, d, e, f, h) { 
    function k() { 
     4 == (l && "readyState"in l ? l.readyState : 0) && b && nc(b)(l) 
    } 
    var l = Ud && Ud(); 
    if (!("open"in l)) 
     return null; 
    "onloadend"in l ? l.addEventListener("loadend", k, !1) : l.onreadystatechange = k; 
    c = (c || "GET").toUpperCase(); 
    d = d || ""; 
    l.open(c, a, !0); 
    f && (l.responseType = f); 
    h && (l.withCredentials=!0); 
    f = "POST" == c; 
    if (e = Xd(a, e)) 
     for (var n in e) 
      l.setRequestHeader(n, e[n]), "content-type" == n.toLowerCase() && (f=!1); 
    f && l.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
    l.send(d); 
    return l 
} 

這裏是我的代碼加載視頻:

var yt = document.createElement('div'), 
    _this = this, 
    id = this.videoID; 

$(yt).attr('id', id); 
this.container.append(yt); 

this.el = new YT.Player(id, { 
    height: '100%', 
    width: '100%', 
    playerVars: { 
     'autoplay': 1, 
     'controls': 0, 
     'search': 0, 
     'showinfo': 0, 
     'autohide': 1, 
     'rel': 0, 
     'html5': 1 
    }, 
    videoId: this.videoID, 
    events: { 
     'onReady': function(e) { _this.loadComplete(e); }, 
     'onStateChange': function(e) { _this.stateChanged(e); }, 
     'onError': function(e) { _this.error(e); } 
    } 
}); 

this.timeout = setTimeout(function() { 
    _this.core.debug.log('YOUTUBE', 'CHECKTIMEOUT', _this); 
    if (!_this.isLoaded) { 
     _this.error(); 
    } 
}, TIMEOUT); 

任何幫助或建議將不勝感激。

+0

也只是一個說明...這個錯誤是不會發生在桌面瀏覽器。 – sethasaurus

+0

你能否提供一個完整的jsfiddle示例,以便我可以在iPhone上進行測試? – JAL

+0

似乎jsfiddle即使在我的iphone上的基本嵌入工作... https://jsfiddle.net/n7gvsqb9/1/ – sethasaurus

回答

0

我認爲這是我自己的代碼的問題。該錯誤正在發生,但我認爲視頻仍然會加載OK。

您甚至可以在YouTube iFrame API演示頁面上看到錯誤,但該視頻正常工作。