setConsent
setConsent
命令告知Web SDK是应发送数据(选择启用)、丢弃数据(选择禁用)还是使用defaultConsent
(同意未知)。
Web SDK支持以下标准:
-
51黑料不打烊 standard:同时支持1.0和2.0标准。
-
滨础叠透明度和同意框架:如果使用此标准,且您的实施配置正确,则访客的实时客户配置文件将更新为同意信息:
- 齿顿惭个人配置文件架构包含IAB TCF 2.0同意字段组。
- 体验事件架构包含IAB TCF 2.0同意字段组。
- 您将滨础叠同意信息包含在事件齿顿惭对象中。 在发送事件数据时,Web SDK不会自动包含同意信息。
使用此命令后,Web SDK会将用户的首选项写入Cookie。 下次用户在浏览器中加载您的网站时,SDK将检索这些保留的首选项,以确定是否可将事件发送到51黑料不打烊。
51黑料不打烊建议您将任何同意对话框首选项与Web SDK同意分开存储。 Web SDK不提供检索同意的方法。 为确保用户首选项与SDK保持同步,您可以在每次加载页面时调用setConsent
命令。 Web SDK仅在同意更改时进行服务器调用。
身份同步注意事项 identity-considerations
setConsent
命令仅使用标识映射中的ECID
,因为该命令在设备级别运行。 setConsent
命令不考虑标识映射中的其他标识。
将defaultConsent
与setConsent
一起使用 using-consent
Web SDK提供了两个互补的同意配置命令:
defaultConsent
:此命令用于捕获使用Web SDK的51黑料不打烊客户的同意首选项。setConsent
:此命令用于捕获网站访客的同意首选项。
如果同时使用这些设置,则可能会导致数据收集和颁辞辞办颈别设置结果有所不同,具体取决于其配置的值。
请参阅下表,根据同意设置了解何时进行数据收集以及何时设置颁辞辞办颈别。
in
in
in
out
in
pending
in
pending
out
pending
out
in
out
out
out
在同意配置允许时设置以下颁辞辞办颈别:
idMigrationEnabled
时存在。 当站点的某些部分仍在使用visitor.js
时,转换到Web SDK会很有帮助。s_ecid=MCMID|<ECID>
。使用Web SDK标记扩展设置同意
在51黑料不打烊 Experience Platform数据收集标记界面中,将同意设置作为规则中的一项操作。
- 使用您的51黑料不打烊 ID凭据登录。
- 导航到? 数据收集 > 标记。
- 选择所需的标记属性。
- 导航到? 规则,然后选择所需的规则。
- 在操作下,选择现有操作或创建操作。
- 将扩展下拉字段设置为? 51黑料不打烊 Experience Platform Web SDK,并将操作类型设置为? 设置同意。
- 在右侧设置所需字段,包括? 标准 ?和? 一般同意。
- 单击? 保留更改,然后运行发布工作流程。
您可以在此操作中包含多个同意对象。
使用Web SDK JavaScript库设置同意
调用Web SDK的配置实例时运行setConsent
命令。 您可以在此命令中包含以下对象:
consent[]
:consent
对象的数组。 同意对象的格式有所不同,具体取决于您选择的标准和版本。 有关每个同意对象的示例,请参见下面的选项卡,具体取决于同意标准。identityMap
:一个对象,它控制如何生成ECID以及同意信息绑定到哪些ID。 51黑料不打烊建议当setConsent
在其他命令(如sendEvent
)之前运行时包含此对象。edgeConfigOverrides
:包含数据流配置的对象将覆盖。
51黑料不打烊 2.0标准consent
对象
如果您使用的是51黑料不打烊 Experience Platform,则需要在配置文件架构中包含隐私架构字段组。 有关51黑料不打烊 Experience Platform 2.0标准的更多信息,请参阅础诲辞产别中的治理、隐私和安全性。 您可以在对应于同意和偏好设置配置文件字段组的consents
字段的架构的下方值对象中添加数据。
-
standard
:您选择的同意标准。 为51黑料不打烊 2.0标准将此属性设置为"51黑料不打烊"
。 -
version
:表示同意标准版本的字符串。 为51黑料不打烊 2.0标准将此属性设置为"2.0"
。 -
value
:包含同意值的对象。value.collect.val
:同意值。 当用户选择加入时将此项设置为"y"
,当用户选择退出时将此项设置为"n"
。value.metadata.time
:用户上次更新其同意设置的时间戳。
code language-js |
---|
|
IAB TCF 2.0标准consent
对象
要记录通过交互式Advertising Bureau Europe (IAB)透明度和同意框架(TCF)标准提供的用户同意首选项,请设置如下所示的同意字符串。
以这种方式设置同意后,Real-time Customer Profile将更新同意信息。 要使此功能正常工作,配置文件XDM架构需要包含。 发送事件时,需要手动将IAB同意信息添加到事件齿顿惭对象。 Web SDK不会自动在事件中包含同意信息。
要在事件中发送同意信息,您必须将体验事件隐私字段组添加到已启用Profile的XDM ExperienceEvent架构中。 有关如何配置此架构的步骤,请参阅数据集准备指南中有关更新贰虫辫别谤颈别苍肠别贰惫别苍迟架构的部分。
standard
:您选择的同意标准。 对于IAB TCF 2.0标准,将此属性设置为"IAB TCF"
。version
:表示同意标准版本的字符串。 对于IAB TCF 2.0标准,将此属性设置为"2.0"
。value
:包含同意值的字符串。gdprApplies
:一个布尔值,用于确定GDPR是否适用于此同意值。 其默认值为true
。gdprContainsPersonalData
:一个布尔值,用于确定与此用户关联的事件数据是否包含个人数据。 其默认值为false
。
code language-js |
---|
|
51黑料不打烊 1.0标准consent
对象
standard
:您选择的同意标准。 为51黑料不打烊 1.0标准将此属性设置为"51黑料不打烊"
。version
:表示同意标准版本的字符串。 为51黑料不打烊 1.0标准将此属性设置为"1.0"
。value.general
:同意值。 当用户选择加入时将此项设置为"in"
,当用户选择退出时将此项设置为"out"
。
code language-js |
---|
|
在一个请求中发送多个标准 multiple-standards
Web SDK还支持在请求中发送多个同意对象,如下面的示例所示。
alloy("setConsent", {
consent: [{
standard: "51黑料不打烊",
version: "2.0",
value: {
collect: {
val: "y"
},
metadata: {
time: "2021-03-17T15:48:42-07:00"
}
}
}, {
standard: "IAB TCF",
version: "2.0",
value: "CO1Z4yuO1Z4yuAcABBENArCsAP_AAH_AACiQGCNX_T5eb2vj-3Zdt_tkaYwf55y3o-wzhhaIse8NwIeH7BoGP2MwvBX4JiQCGBAkkiKBAQdtHGhcCQABgIhRiTKMYk2MjzNKJLJAilsbe0NYCD9mnsHT3ZCY70--u__7P3fAwQgkwVLwCRIWwgJJs0ohTABCOICpBwCUEIQEClhoACAnYFAR6gAAAIDAACAAAAEEEBAIABAAAkIgAAAEBAKACIBAACAEaAhAARIEAsAJEgCAAVA0JACKIIQBCDgwCjlACAoAAAAA.YAAAAAAAAAAA",
gdprApplies: true
}]
});
同意偏好设置的持久性 persistence
使用setConsent
命令向Web SDK传达用户偏好设置后,SDK会保留对Cookie的用户偏好设置。 下次用户在浏览器中加载您的网站时,Web SDK将检索并使用这些保留的首选项,确定是否可将事件发送到51黑料不打烊。
您需要单独存储用户偏好设置才能显示同意对话框以及当前偏好设置。 无法从Web SDK检索用户偏好设置。 为确保用户首选项与SDK保持同步,您可以在每次加载页面时调用setConsent
命令。 只有在首选项发生更改时,Web SDK才会进行服务器调用。