javascript - 确定 cookie 的来源是 javascript 还是跟踪像素

标签 javascript http cookies tracking-pixel

我需要能够确定和识别 cookie 的来源。虽然许多 cookie 会在原始页面的 HTTP 响应中到达浏览器,但其他 cookie 是通过 javascript 或通过使用 http 在页面上加载的 Assets (例如跟踪像素或 AJAX 调用)添加到浏览器的。

确定/识别每个 cookie 来源的好方法是什么?

最佳答案

发布这个是因为我也在为这个问题苦苦挣扎,终于找到了解决方案。

据我所知,这仅适用于 Firefox 控制台......

  1. 在刷新后(在设置任何 cookie 之前)您知道在页面上运行的 javascript 的第一行设置断点。
  2. 然后清除缓存和 cookie。
  3. 将以下代码片段粘贴到 Firefox 的控制台中。
  4. 移除断点并恢复脚本执行。

您应该看到在控制台中创建的每个 cookie 的堆栈跟踪!

origDescriptor = Object.getOwnPropertyDescriptor(HTMLDocument.prototype, 'cookie'); // add cookie property to HTMLDocument constructor

Object.defineProperty(document, 'cookie', {
    get() {
        return origDescriptor.get.call(this);
    },

    set(value) {
        console.log("%c Cookie is :" + value, "background: #ffffff; color: #000000");
        console.trace();
        // debugger;
        return origDescriptor.set.call(this, value);
    },

    enumerable: true,
    configurable: true
});

我必须感谢 fflorent对于这段代码,他在另一个主题中发布了 - 谢谢!

关于javascript - 确定 cookie 的来源是 javascript 还是跟踪像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30946617/

相关文章:

javascript - 查找 new Function() 失败时出现语法错误的位置

java - 带有 Java API 的 Node Web 应用程序

用于禁止页面上的 Iframe 的 HTTP header

javascript - Express session 表现不同 : How can I prevent my session from being destroyed after a page refresh?

javascript - document.activeElement.href 在 chrome 中不起作用

javascript - flexbox javascript从cms动态加载

java - RESTEasy 是否有一个好的 BrowserCache 实现? (比 LightweightBrowserCache 更好)

java - 通过 angular 4 http post 连接到服务器端不允许的 java rest api

Java CookiePolicy ACCEPT_ORIGINAL_SERVER 拒绝 cookie

facebook - 通过 Facebook 登录后,ASP.NET MVC5 OWIN : Why User. Identity.IsAuthenticated == false?