为了确保在使用AMP时遵守Cookie法律,我需要能够阻止安装Cookie的脚本,并仅在用户同意后才激活它们。我试图在符合AMP的页面上实现这一点,但我遇到了下面描述的问题。
在阅读AMP文档时,我注意到只有在脚本类型设置为“application/ld+json”时才能插入脚本。一旦cookie同意,我们目前处理阻止和重新激活脚本的方式是在页面源代码中将脚本类型更改为纯文本,然后仅在给予同意后才通过javascript将其切换回来。
我们如何在符合AMP的页面上实现这一点?如果不能插入自定义脚本标记,我可以创建一个“AMP -plugin”或一个被AMP系统接受的脚本来实现同样的功能吗?有没有可能在页面加载时阻止AMP激活,然后用特定的触发器激活它?
此外,我们还注意到AMP js本身正在安装cookie。AMP js的加载是否也可以在用户同意cookie的情况下进行?
提前感谢您的帮助。
发布于 2016-10-19 21:55:44
无论哪种方式,Cookie都可能会带来麻烦。AMP站点是通过Google CDN交付的-因此它们在google子域上运行,而不是在您自己的域上运行。这是由Google完成的,以进一步加快网站的渲染速度。
所以,即使你可以写一个cookie,它的作用域也是google的子域,而不是你自己的域。
在amp-analytics插件的上下文中似乎有一些解决方案:https://www.ampproject.org/docs/guides/analytics/analytics_basics
发布于 2016-10-20 20:54:26
这是一个cookie accept sample。
希望这能有所帮助。通常,只通知用户您使用cookies是可以的。
如果您想在加载AMP之前使用数据块cookie,则必须通过脚本自行处理它。同样,当用户不接受时。
发布于 2016-10-21 02:45:10
如https://github.com/ampproject/amphtml/blob/master/extensions/amp-analytics/analytics-vars.md#clientid中所述,可以通过传入amp-user-notification-id来控制Cookie写入
您需要使用的确切代码取决于正在编写cookies的组件。它是一个分析供应商,还是一个广告或其他什么东西?
https://stackoverflow.com/questions/40133296
复制相似问题