使用您自己或第三方脚本设置 cookie 可以使用 PHP 和 JavaScript 进行精细控制。尽管在法院对 Planet49 做出裁决后,这并不是实施 cookie 解决方案的充分解决方案(这里至关重要的是,Google Analytics 等跟踪工具首先不会跟踪,因此不会设置 cookie),但将 cookie 通常列入白名单/黑名单是有意义的。
这在 PHP 中很容易做到:在这里您可以修改/删除任何可能已设置的cookie 标头。如果您在使用setcookie为响应标头准备好 cookie 后调用以下脚本,则不需要的标头将被删除,并且这些 cookie 不会首先设置。此外,过去设置的cookie(例如,如果预防脚本由于某种原因不起作用)也会被删除。
8b723b3329c080e9245028b4d0a3fc64
在JavaScript中,这是少一点小事:在这里我们使用Object.defineProperty (强大的继任者__defineGetter__和__defineSetter__ ),以覆盖该文件对象的getter / setter方法,当饼干的帮助下使用它们总是叫了document.cookie读取和写入。 Object.getOwnPropertyDescriptor接收原始的getter / setter,从而仅在允许cookie的情况下才调用setter:
8b723b3329c080e9245028b4d0a3fc64