註冊PreTrackCallback

registerPreTrackCallback 變數可讓您的組織在影像要求 URL 編譯完成但尚未傳送時,連結 JavaScript 函數。您可以使用此變數將 AppMeasurement 收集的資料傳送至合作夥伴或內部基礎架構。

警告

請勿在 registerPostTrackCallback 變數內呼叫 t()tl() 之類的任何追蹤呼叫。 此變數中的追蹤函數會導致影像要求發生無限循環!

每次呼叫 registerPreTrackCallback 變數時,您都可以連結該函數,以便在影像要求編譯完成時執行。請避免在同一個頁面載入中多次註冊相同的函數。

注意

對於在 registerPreTrackCallbackregisterPostTrackCallback 之間引發的函數,我們不能保證引發的時間和順序。 請避免這兩個函數之間有相依性。

使用Web SDK擴展進行預跟蹤回調

Web SDK在編譯資料後但在將其發送到Adobe之前無法掛接函式。 但是,您可以 onBeforeEventSend 在發送資料之前註冊要執行的函式。

  1. 登錄到 Adobe Experience Platform資料收集 使用AdobeID憑據。
  2. 按一下所需的標記屬性。
  3. 轉到 擴展 ,然後按一下 配置 按鈕 Adobe Experience PlatformWeb SDK。
  4. 下 資料收集,按一下 在事件發送回調代碼之前編輯 按鈕
  5. 將所需代碼放入編輯器中。

手動實現Web SDK的預跟蹤回調

Web SDK在編譯資料後但在將其發送到Adobe之前無法掛接函式。 但是,您可以 onBeforeEventSend 在資料發送前註冊要執行的函式,類似於 doPlugins。 請參閱 全局修改事件 的子菜單。

// Set the trackingCode XDM field to "New value"
alloy("configure", {
  "onBeforeEventSend": function(content) {
    content.xdm.marketing.trackingCode = "New value";
  }
})

使用Adobe Analytics分機的預跟蹤回調

Adobe Analytics擴展中沒有專用欄位可使用此變數。 請依照 AppMeasurement 語法使用自訂程式碼編輯器。

AppMeasurement中的s.registerPreTrackCallback和Analytics擴展自定義代碼編輯器

s.registerPreTrackCallback 是能將函數當作唯一引數的函數。巢狀函數會在影像要求傳送之前執行。

s.registerPreTrackCallback(function(){/* Desired code */});

如果您想在程式碼中使用影像要求 URL,請在巢狀函數內參考 requestUrl 字串引數。您可以解析 requestUrl 變數來滿足所需用途;調整此變數不會影響資料彙集。

s.registerPreTrackCallback(function(requestUrl){
  console.log(requestUrl); // Outputs the full image request URL
});

您可以在 s.registerPreTrackCallback 函數中加入其他引數,這些引數可用於巢狀函數:

s.registerPreTrackCallback(function(requestUrl,a,b,c) {
    console.log(requestUrl); // Full image request URL
    console.log(a); // param1
    console.log(b); // param2
    console.log(c); // param3
}, "param1", "param2", "param3");
注意

設定頁面變數或變更此函數中的 requestUrl 字串​不會​影響此函數呼叫後不久傳送的影像要求。 請改用 doPlugins() 變數。

本頁內容