Fence: reportEvent() 方法

可用性有限

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

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

Fence 介面的 reportEvent() 方法會觸發透過 beacon 將報告資料提交到透過 registerAdBeacon() 方法註冊的一個或多個特定 URL。這些 URL 屬於 Protected Audience API,用於收集廣告競價結果。

注意: setReportEventDataForAutomaticBeacons() 提供了類似的報告資料提交功能,但不同之處在於,在這種情況下,提交是透過導航觸發的,而不是透過顯式方法呼叫。

語法

js
reportEvent(event)

引數

event

表示要傳送的資料的物件或字串。

  • 物件值定義了您要傳送的特定報告事件。必需的屬性如下:
    eventType

    表示正在報告的事件型別的字串 — 例如,您可能對廣告被點選的次數感興趣。此字串可以是任何相關的事件名稱(例如 click)。這需要與 registerAdBeacon() 呼叫中指定的事件型別匹配,該呼叫位於 Protected Audience API 工作執行緒中。

    eventData

    表示要傳送的資料的字串。

    destination

    一個包含一個或多個列舉值(表示目標型別)的陣列。這些是參與方,它們將透過其註冊的 URL(即透過 registerAdBeacon())接收資料。可能的值包括:

    • "buyer":廣告競價中的競拍者。
    • "seller":執行廣告競價的頂層賣方。
    • "component-seller":多層競價中的元件競價的賣方。
    • "direct-seller":直接運行了競拍者出價的競價的賣方。如果廣告是單層競價,則使用值 "seller"。如果廣告是多層競價,則使用值 "component-seller"
    • "shared-storage-select-url"Shared Storage API 的儲存位置,在 Window.sharedStorage.selectURL() 方法呼叫中定義。
  • 字串值表示 eventType,例如 "click"(請參閱 eventType 的先前定義)。當 eventType 字串作為 reportEvent() 的值傳遞時,它將觸發所有以該事件型別為條件的 Private Aggregation 貢獻(例如,透過 PrivateAggregation.contributeToHistogramOnEvent())的傳送。

返回值

無(Undefined)。

示例

js
window.fence.reportEvent({
  eventType: "click",
  eventData: JSON.stringify({ clickX: "123", clickY: "456" }),
  destination: ["buyer", "seller"],
});

規範

規範
圍欄框架
# dom-fence-reportevent

瀏覽器相容性

另見