以某种方式可以从cookie迁移域吗? 我有一个trackingscript女巫在跟踪脚本(服务器端,RoR后端)的域上设置一个cookie,让我们说mytracking.com。
跟踪脚本本身作为javascript集成在域mycustomer.com上。
现状是,网站mycustomer.com上的每位访客现在都拥有mytracking.com域名的cookie。
我可以以某种方式将cookie域从mytracking.com迁移到mycustomer.com吗?
答案 0 :(得分:1)
在客户端JavaScript中,生成唯一ID。然后创建一个iframe
,其源代码指向mytracking.com
上的脚本,并将唯一ID作为参数。
var ifrm = document.createElement('iframe');
ifrm.setAttribute('src', 'mytracking.com/storecookie.rb?uuid=<UUID>');
document.body.appendChild(ifrm);
现在storecookie.rb
脚本可以访问mytracking.com
域上的cookie值,并将其与您生成的UUID一起写入数据库。
现在,在您的客户端JavaScript中,您fetch()
另一个脚本,例如mytracking.com/readcookie.rb?uuid=<UUID>
,它从数据库中检索匹配的cookie值。利用客户端JS中的值,您只需使用正确的域创建一个新的cookie。
不幸的是,这个过程有点复杂,但跨域安全性阻止了为另一个域设置cookie。