このページでは、Server SDK configure メソッドのidMigrationEnabledについて説明します。 Web SDKについては、idMigrationEnabledを参照してください。
idMigrationEnabled プロパティを使用すると、従来のAdobe Visitor ID サービス (VisitorAPI.js)が訪問者に割り当てたExperience Cloud ID (ECID)をServer SDKで再利用できます。 訪問者ID サービスは、ECIDをAMCV_<orgId>という名前のCookieに保存します。 これらのIDを再利用すると、訪問者ID サービスからWeb SDKまたはServer SDKに移動する際に、一意の訪問者が急激に増加するのを防ぐことができます。
サーバーでのID移行の仕組み how-it-works
SDKは、ユーザーがforRequestに渡すCookie サービスを通じてCookieを読み取り、書き込みます。 idMigrationEnabledがtrueの場合:
- 訪問者に
kndctr_<orgId>_identityCookieがなく、AMCV_<orgId>Cookieがある場合、SDKはAMCV_CookieからECIDを読み取り、イベントのidentityMapに追加します。 その後、Edge NetworkはそのECIDを引き続き訪問者に使用します。 - Edge Networkが訪問者のIDを返すと、SDKは訪問者ID サービスを使用しているページが同じ訪問者を認識できるように、
kndctr_<orgId>_identityCookieとAMCV_<orgId>Cookieの両方に書き込みます。
IDの移行は、cookie サービスが訪問者の実際のブラウザーCookieへのSDK アクセスを許可し、訪問者ID サービスが同じorgIdを持つ同じドメインで実行された場合にのみ機能します。 サーバーSDKは、訪問者ID サービスライブラリ自体からIDを読み取ることができません。そのライブラリはブラウザーでのみ実行されます。
Cookie サービスが訪問者のブラウザーCookieを読み取らない場合、またはサイトが訪問者ID サービスを使用したことがない場合、IDの移行は影響しません。
コード例
configureを呼び出すときにidMigrationEnabled ブール値を設定します。 省略すると、デフォルトはtrueになります。 SDKがAMCV_ Cookieを読み取り、書き込むのを停止するには、これをfalseに設定します。
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(",")
},
idMigrationEnabled: false
});