whitelistParentDomain 及 whitelistIframeDomains

這些設定可讓實作於 iFrame 及上層頁面的不同 ID 服務代碼執行個體互相通訊。這些設定可在您不一定控制上層頁面/網域,且在您已控制之網域的 iFrame 中載入 ID 服務程式碼的情況下,協助您解決兩種特定使用案例的問題。這些設定適用於 VisitorAPI.js 程式碼 2.2 版或更新版本。

內容:

語法

使用此程式碼時,需要兩個設定元素。

設定語法 說明

whitelistParentDomain:" 上層頁面的網域名稱 "

接受單一網域名稱以字串形式傳入。

whitelistIframeDomains:[ "iFrame 網域","iFrame 網域","iFrame 網域" ]

接受一個或多個 iFrame 網域名稱以陣列形式傳入。

程式碼範例

您設定的 ID 服務程式碼看起來與此範例類似。

//Instantiate Visitor 
var visitor = Visitor.getInstance("Insert Experience Cloud Organization ID here",{ 
 ... 
 //Add parent page domain name and iFrame domain names 
 whitelistParentDomain: "parentpageA.com", 
 whitelistIframeDomains: ["iFrameDomain1.com","iFrameDomain2.com"], 
 ... 
 } 
);

使用案例

這些設定可協助您解決在瀏覽器封鎖第三方 Cookie 且下列任一條件成立時設定 ID 服務 Cookie 和指派訪客 ID 的問題:

  • 您不一定可控制上層頁面/網域。
  • ID 服務程式碼未安裝在上層頁面上,但實作於 iFrame 中。
小費

當您在 iFrame 中使用影片活動訊號提供影片時,您也可以實作這些設定。影片心率必須要有 ID 服務 ID (MID) 才能正常運作。

使用案例 1:在 iFrame 和上層頁面實作瀏覽器封鎖第三方 Cookie 及 ID Service

使用案例元素 說明

條件

此使用案例包含下列條件:

  • A 公司在其首頁中實作了 ID 服務。
  • A 公司在其首頁的 iFrame 中實作了 ID 服務。
  • A 公司擁有上層頁面和 iFrame,而且兩處均已實作 ID 服務。
  • 客戶將上層頁面載入封鎖第三方 Cookie 的瀏覽器中。

結果

基於這些條件,ID 服務會:

  • 在上層頁面上正常運作。它會請求並設定 AMCV Cookie,然後將唯一 ID 指派給網站訪客。
  • 在 iFrame 中無法運作。這是因為瀏覽器會將 iFrame 視為第三方網域,而防止 ID 服務設定 AMCV Cookie。

解決方法

藉由這些白名單設定來修改 iFrame 中的 ID 服務 Visitor.getInstance 函數。在程式碼中指定上層網域和子網域。這些設定可讓 iFrame 中的 ID 服務程式碼檢查上層頁面上的 ID 服務程式碼中是否有訪客 ID。

如果 iFrame 中的 ID 服務程式碼未收到回應上層頁面,這些設定將會產生本機訪客 ID。

使用案例 2:從您未控制或未使用 ID 服務的上層頁面中內嵌的 iFrame 請求 ID

使用案例元素 說明

條件

此使用案例包含下列條件:

  • 公司 A 未使用 ID 服務。
  • 公司 A 在頁面上載入 iFrame。此 iFrame 歸 B 公司所擁有,並載入到不同於 A 公司的網域。
  • 瀏覽器會封鎖第三方 Cookie。

結果

基於這些條件,ID 服務會:

  • 在 iFrame 中無法運作。這是因為瀏覽器會將 iFrame 視為第三方網域,而防止 ID 服務設定 AMCV Cookie。
  • 無法從上層頁面取得訪客 ID,因為公司 A 未使用此服務。

解決方法

藉由這些白名單設定來修改 iFrame 中的 ID 服務 Visitor.getInstance 函數。在程式碼中指定上層網域和子網域。這些設定可讓 iFrame 中的 ID 服務程式碼檢查上層頁面上的 ID 服務程式碼中是否有訪客 ID。

如果 iFrame 中的 ID 服務程式碼未收到回應上層頁面,這些設定將會產生本機訪客 ID。

設定安全與安全性

您可以安全地實作這些設定,因為:

  • 在上層網域和 iFrame 網域中實作的 ID 服務必須使用相同的組織 ID。當上層網域或 iFrame 中的組織 ID 不同時,這些白名單設定將無法運作。
  • 這些設定只會與程式碼中指定的網域和 iFrame 通訊。
  • iFrame 與上層頁面之間的通訊會遵循特定格式。如果上層頁面上的 ID 服務未收到預期格式的請求,此共用程序將會失敗。

支援的訪客 API 方法

實作這些白名單設定時,ID 服務支援有限的公用 API 方法集。支援的方法會依據上述使用案例的情況而有所不同。

使用案例 支援的方法

案例 1

  • getMarketingCloudID
  • getAudienceManagerLocationHint
  • getAudienceManagerBlob
  • getSupplementalDataID
  • getCustomerIDs

案例 2

  • getSupplementalDataID
  • getMarketingCloudVisitorID

本頁內容