使用 YouTube iframe 时强制执行 nocookie 模式 API

Enforce nocookie mode when using the YouTube iframe API

我想确保当我初始化一个 new YT.player() 时,我可以设置它以确保它使用来自 www.youtube-nocookie.com 域的嵌入。这目前可能吗?我还没有在文档中找到对它的任何引用。

啊。我正要 post 我的问题时设法解决了这个问题。

在我的代码中,我使用了类似的东西:

<iframe id="myVideo" src="https://www.youtube-nocookie.com/embed/<VIDEO_ID>?enablejsapi=1"></iframe>

...然后我可以使用以下代码通过 JS 获取已经嵌入 HTML 中的播放器:

var player;
var onYouTubeIframeAPIReady = function() {
  player = new YT.Player("myVideo");
};

不过,如果有一种方法也可以用 JS 初始化 www.youtube-nocookie.com 视频,那就太好了。

我知道,这是一个迟到的答案,但可能相关,因为它仍在工作:

您可以使用 host-parameter:

function onYouTubeIframeAPIReady() {
  var player = new YT.Player('player', {
    videoId: 'aqz-KE-bpKQ',
    host: 'https://www.youtube-nocookie.com',
    playerVars: {
      origin: window.location.host
    }
  });
}

var s = document.createElement('script');
s.src = 'https://www.youtube.com/iframe_api';
document.head.appendChild(s);
<div id="player"></div>

遗憾的是,由于 same-origin-policy.

,它在 Whosebug 上不起作用

不过,我在一个活动项目中有相同的代码 运行..