DNT头域是一种在 HTTP 请求中表达用户跟踪偏好的机制。一个有效的请求中最多可以有一个DNT头域。
DNT 字段名称 = "DNT"
DNT 字段值 = ("0" / "1") *DNT 扩展名
- 如果未启用用户的跟踪首选项,用户代理不得生成DNT头字段。
- 如果启用了用户的跟踪首选项,用户代理必须生成一个 DNT 头字段,其字段值以数字字符“1”开头,他们的首选项是DNT:1,并且没有为请求目标授予例外。
- 如果启用了用户的跟踪首选项并且他们的首选项是DNT:0,或者如果已为请求目标授予异常,则用户代理必须生成带有以数字字符“0”开头的字段值的 DNT 标头字段.
- 代理不得生成 DNT头字段,除非它已被发出请求的用户专门安装或配置为这样做,并且像用户代理一样遵守上述要求。
以下是一些请求站点特定例外的方法:
无效 storeSiteSpecificTrackingException(StoreSiteSpecificExceptionPropertyBag 属性)
这由页面调用以存储特定于站点的跟踪异常。该storeSiteSpecificTrackingException
方法采用StoreSiteSpecificExceptionPropertyBag类型的字典参数,该参数允许提供可选信息。
DOM字符串?领域
这是例外适用的cookie 域。
DOM字符串?站点名称
顶级来源名称的用户可读字符串。
DOM字符串?解释字符串
对请求的简短说明。
DOM字符串?详细URI
可以找到有关此请求的更多信息的位置。
DOM字符串?过期
日期和时间,按照cookie 过期属性的描述进行编码,指示记住的授权的最大生命周期。
长的?最大年龄
一个正数秒数,表示记住授权的最长生命周期。
序列 arrayOfDomainStrings
一个 JavaScript 字符串数组。如果请求不包括arrayOfDomainStrings
,则此请求针对站点范围的异常。否则,arrayOfDomainStrings中的每个字符串都指定一个目标。调用时,storeSiteSpecificTrackingException
必须立即返回。如果提供了列表arrayOfDomainStrings,用户代理可以选择存储站点范围的异常。如果这样做,它必须在返回值中指出这一点。
那么,作为第一个问题的答案,如何请求例外?,我建议你这样做:
Navigator.storeSiteSpecificTrackingException
如果您想删除权限授予,请执行以下操作:
Navigator.removeSiteSpecificTrackingException
没有回调removeSiteSpecificTrackingException
。进行调用后,可以确保给定顶级 origin 没有特定于站点或站点范围的异常。
作为第二个问题的答案,如何查看网站上的例外偏好是否被接受?,confirmSiteSpecificTrackingException
是用于相同的方法:
boolean confirmSiteSpecificTrackingException (ConfirmSiteSpecificExceptionPropertyBag properties)
此方法由页面调用以确认特定于站点的跟踪异常。
所以你所要做的就是:
Navigator.confirmSiteSpecificTrackingException