【问题标题】:Disable cookies when using the YouTube IFrame Player API script with the youtube-nocookie.com domain在 youtube-nocookie.com 域中使用 YouTube IFrame Player API 脚本时禁用 cookie
【发布时间】:2020-12-26 17:55:32
【问题描述】:

在使用 YouTube IFrame Player API 和从 www.youtube-nocookie.com 域播放的隐私增强模式视频时,如何禁用在 youtube.com 上设置的 cookie?

https://support.google.com/youtube/answer/171780?hl=en 的“开启隐私增强模式”部分,建议使用www.youtube-nocookie.com 域来:

在不使用跟踪观看行为的 cookie 的情况下嵌入 YouTube 视频。

这很好用,不会按预期设置 cookie。

但是,我们使用 IFrame Player API(在嵌入参数上带有 enablejsapi=1),确实设置了 cookie。我们看到在 .youtube.com 域上设置了以下 cookie:

  • YSC
  • VISITOR_INFO1_LIVE

这些被设置为来自https://www.youtube.com/iframe_api 的 Iframe Player API 脚本的 HTTP cookie(打开 Chrome 隐身窗口并直接查看该脚本 URL 并检查 cookie,您将看到上面的 2 个 cookie 集)。我不确定这些 cookie 到底是什么,但它们看起来有点像跟踪 cookie。

因此,这些设置是在用户与视频互动或采取任何同意操作之前设置的,这意味着我们不能使用 IFrame Player API,同时在欧盟 cookie 指令方面仍符合 GDPR。

所以问题是,我们如何在不设置 cookie 的情况下使用 IFrame Player API?

注意:我已经用标签 youtube-iframe-api 发布了这个,希望谷歌能回答这个问题:

我们支持 Stack Overflow 上的 YouTube IFrame API。 Google 工程师使用 youtube-iframe-api 标签监控和回答问题。

(来自https://developers.google.com/youtube/players/support

【问题讨论】:

  • 开始怀疑“Google 工程师监控和回答问题”有多准确......

标签: cookies youtube youtube-iframe-api


【解决方案1】:

我遇到了类似的问题,并决定尝试改用 script。但是,到目前为止,他们的文档似乎并不清楚如何在没有任何 cookie 的情况下实现这一目标。简单地将 https://www.youtube.com/iframe_api 替换为 https://www.youtube-nocookie.com/iframe_api 会导致 404 错误。

基于this,我尝试了以下方法。此代码以编程方式创建视频播放器并将https://www.youtube-nocookie.com 设置为主机。它确实加载了视频,如果您检查它,您会看到最初没有创建任何 cookie;但如果你开始播放视频,https://www.youtube-nocookie.com 会设置一个名为 NID 的 cookie。在设置 cookie 方面,这与使用 www.youtube.com 通过 iframe 加载视频的结果相同。

<div id="js-player"></div>
<script src="https://www.youtube.com/player_api"></script>
window.onYouTubePlayerAPIReady = function() {
  new YT.Player(document.getElementById("js-player"), {
    height: '315',
    width: '560',
    host: 'https://www.youtube-nocookie.com',
    videoId: 'M7lc1UVf-VE'
  })
};

https://jsfiddle.net/c9Lbksx6/

因此,无论您做什么,在使用带有 JavaScript 控件的 YouTube 播放器 API 时,您最终都会得到至少 1 个 cookie。不幸的是,目前似乎没有理想的解决方案。

【讨论】:

  • 恕我直言,这绝对没用,因此从 youtube-nocookie.com 播放的 Youtube 在 localStorage 中存储了许多值。从欧盟的“cookie-law”来看是一样的,存储cookie和存储到localStorage没有区别,你必须事先询问读者。
猜你喜欢
  • 1970-01-01
  • 2016-07-28
  • 2023-04-08
  • 2013-10-24
  • 2012-09-14
  • 2015-11-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多