changeInfo.cause
是 chrome.cookies.onChanged
事件的一部分,它描述了 cookie 更改的原因。这是一个字符串,可以有以下几个可能的值:
- “evicted”:cookie 已被驱逐,可能是因为它过期或达到了存储限制。
- “expired”:cookie 已过期,这是因为它达到了其指定的
expirationDate
。 - “explicit”:cookie 被明确设置或删除,可能是由于 HTTP 的
Set-Cookie
响应头,或者是因为调用了chrome.cookies.set()
或chrome.cookies.remove()
方法。 - “expired_overwrite”:已有的 cookie 被新的 cookie 覆盖了,因为旧的 cookie 过期了。
- “overwrite”:已有的 cookie 被新的 cookie 覆盖了。
例如,当一个网站更新了一个已经存在的 cookie 的值时,可能会触发一个带有 "overwrite"
原因的 onChanged
事件。如果一个 cookie 到达了它的 expirationDate
并被删除了,那么可能会触发一个带有 "expired"
原因的 onChanged
事件。
了解 changeInfo.cause
可以帮助您确定何时以及为什么 cookie 发生了变化,从而允许您更精确地响应这些变化。