Attribution-Reporting-Register-Trigger header

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

HTTP Attribution-Reporting-Register-Trigger 響應頭將頁面功能註冊為歸因觸發器。此頭作為對包含Attribution-Reporting-Eligible頭的請求的響應的一部分。

有關更多詳細資訊,請參閱 歸因報告 API

注意: 如果呼叫站點未在成功的隱私沙盒註冊過程中包含歸因報告 API,則 Attribution-Reporting-Register-Trigger 頭將被忽略,並且不會註冊歸因觸發器。

頭型別 響應頭
禁止請求頭
CORS-safelisted 響應頭

語法

http
Attribution-Reporting-Register-Trigger: <json-string>

指令

<json-string>

一個 JSON 字串,提供可包含在生成的報告中的資料,例如觸發器 ID、優先順序和去重值。可用欄位如下:

"aggregatable_trigger_data"

一個物件陣列,每個物件定義一個要應用於不同源鍵的聚合鍵。每個物件包含以下屬性:

"key_piece"

表示鍵的十六進位制值。

"source_keys"

一個數組,包含資料的一個或多個鍵值。

"aggregatable_values"

一個物件,包含表示 "aggregatable_trigger_data" 中定義的每個資料點的值的屬性。在每種情況下,屬性名等於 "source_keys" 中定義的名稱,屬性值是您需要的任何任意值。

"debug_key" 可選

表示除錯鍵的數字。如果您想在關聯的歸因報告旁邊生成除錯報告,請設定此項。

"debug_reporting" 可選

一個布林值。如果設定了 debug_key,則將其設定為 true,以指定生成的除錯報告應為詳細除錯報告。

"filters" 可選

一個物件,包含可用於過濾哪些觸發器生成報告的自定義資料。有關更多詳細資訊,請參閱過濾器

"event_trigger_data"

一個表示觸發器資料的物件。可用子欄位如下:

"trigger_data"

一個表示描述觸發器的資料的字串,通常用於指示諸如“使用者將商品新增到購物車”或“使用者訂閱了郵件列表”等事件。此值將包含在生成的事件級報告(如果有)中,但它會根據歸因源的"trigger_data_matching"欄位進行修改。

注意:用於表示每個事件的值以及陣列中元素的數量完全是任意的,由您作為開發者定義。陣列可能包含未使用的值,但必須在陣列中存在值,以便瀏覽器在註冊觸發器時將其歸因於來源。

"priority" 可選

一個表示歸因觸發器優先順序值的字串。預設情況下,觸發器歸因於最近的匹配源。對於事件級和彙總報告,您設定更高的優先順序數字以使觸發器匹配更舊的源。例如,值 2 優先於預設值 1。有關更多資訊,請參閱報告優先順序和限制

"deduplication_key" 可選

一個表示唯一鍵的字串,可用於防止歸因重複——例如,如果使用者多次將同一商品新增到購物車。有關更多資訊,請參閱防止報告重複

"filters" 可選

一個物件,包含執行選擇性過濾的過濾器,用於根據相應Attribution-Reporting-Register-Source頭中設定的 filter_data 來設定 "trigger_data""priority""deduplication_key"。有關更多資訊,請參閱過濾器

示例

註冊事件級報告的觸發器

Node.js 伺服器可能會如下設定 Attribution-Reporting-Register-Trigger 響應頭,以註冊旨在匹配事件級報告歸因源的觸發器:

js
res.set(
  "Attribution-Reporting-Register-Trigger",
  JSON.stringify({
    event_trigger_data: [
      {
        trigger_data: "4",
        priority: "1000000000000",
        deduplication_key: "2345698765",
      },
    ],
    debug_key: "1115698977",
  }),
);

註冊彙總報告的觸發器

註冊旨在與彙總報告歸因源匹配的觸發器時,您需要包含以下欄位:

js
res.set(
  "Attribution-Reporting-Register-Trigger",
  JSON.stringify({
    aggregatable_trigger_data: [
      {
        key_piece: "0x400",
        source_keys: ["campaignCounts"],
      },
      {
        key_piece: "0xA80",
        source_keys: ["geoValue", "nonMatchingKeyIdsAreIgnored"],
      },
    ],
    aggregatable_values: {
      campaignCounts: 32768,
      geoValue: 1664,
    },
    debug_key: "1115698977",
  }),
);

規範

規範
歸因報告
# create-an-attribution-trigger

瀏覽器相容性

另見