本页介绍了Server SDK configure方法中的thirdPartyCookiesEnabled。 对于Web SDK,请参阅thirdPartyCookiesEnabled.
thirdPartyCookiesEnabled属性确定Server SDK是否使用Adobe Audience Manager第三方域adobedc.demdex.net来帮助识别访客。 它还控制您是否可以请求访客的核心ID。
此属性在服务器上的工作方式 how-it-works
在浏览器中,Web SDK使用第三方域读取和设置demdex.net上的Cookie,这有助于跨域识别访客。 在服务器上,请求直接从您的服务器发送到Adobe,因此它们从不携带访客的demdex.net Cookie,而Adobe在响应中设置的任何demdex.net Cookie永远不会到达访客的浏览器。
当thirdPartyCookiesEnabled为true时(默认):
- 访客的第一个未经身份验证的请求(来自
getIdentity、appendIdentityToUrl或setConsent)将转至adobedc.demdex.net,而不是edgeDomain。 - SDK会要求Edge Network提供ECID和CORE ID。
- 您可以使用
getIdentity请求CORE命名空间。 由于请求不带有访客的demdex.netCookie,因此服务器收到的核心ID可能与访客浏览器中的核心ID不匹配。
当thirdPartyCookiesEnabled为false时:
- 所有未经身份验证的请求都转到
edgeDomain。 - SDK仅向Edge Network请求ECID。
- 请求包含
getIdentity的CORE命名空间会因错误而拒绝。
此属性不影响sendEvent发送事件的位置。 SDK始终会将事件发送到经过身份验证的Edge Network服务器API。
除非您需要核心ID,否则请考虑将thirdPartyCookiesEnabled设置为false,以便所有请求都转到您配置的edgeDomain。
代码示例
调用configure时设置thirdPartyCookiesEnabled布尔值。 如果省略,则默认为true。
await alloy.configure({
datastreamId: "ebebf826-a01f-4458-8cec-ef61de241c93",
orgId: "ADB3LETTERSANDNUMBERS@AdobeOrg",
edgeCredentials: {
clientId: process.env.ADOBE_CLIENT_ID,
clientSecret: process.env.ADOBE_CLIENT_SECRET,
scopes: process.env.ADOBE_SCOPES.split(",")
},
thirdPartyCookiesEnabled: false
});
recommendation-more-help
experience-platform-help-collection