HTMLScriptElement: attributionSrc 屬性

可用性有限

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

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

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

HTMLScriptElement 介面的 attributionSrc 屬性可以透過程式設計方式獲取和設定 <script> 元素上的 attributionsrc 屬性,反映該屬性的值。attributionsrc 指定您希望瀏覽器在請求指令碼資源時附加一個 Attribution-Reporting-Eligible 頭部。

在伺服器端,這用於在響應中觸發傳送 Attribution-Reporting-Register-SourceAttribution-Reporting-Register-Trigger 頭部,以分別註冊一個基於 JavaScript 的 歸因源歸因觸發器。應該傳送哪個響應頭部取決於觸發註冊的 Attribution-Reporting-Eligible 頭部的值。

注意: 或者,可以透過傳送包含 attributionReporting 選項的 fetch() 請求(直接在 fetch() 呼叫中設定,或在傳遞給 fetch() 呼叫的 Request 物件上設定),或者透過傳送呼叫了 setAttributionReporting()XMLHttpRequest 來註冊基於 JavaScript 的歸因源或觸發器。

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

一個字串。此屬性有兩個版本可供獲取和設定。

  • 空字串,即 scriptElem.attributionSrc=""。這指定您希望將 Attribution-Reporting-Eligible 頭部發送到 src 屬性指向的同一臺伺服器。當您在同一臺伺服器上處理歸因源或觸發器註冊時,這是可以的。在註冊歸因觸發器時,此屬性是可選的,如果省略,則會使用空字串值。

  • 包含一個或多個 URL 的值,例如

    js
    scriptElem.attributionSrc =
      "https://a.example/register-source https://b.example/register-source";
    

    這在請求的資源不在您控制的伺服器上,或者您只想在不同的伺服器上處理歸因源註冊的情況下很有用。在這種情況下,您可以指定一個或多個 URL 作為 attributionSrc 的值。當發生資源請求時,除了資源來源外,Attribution-Reporting-Eligible 頭部還將傳送到 attributionSrc 中指定的 URL。然後,這些 URL 可以根據需要使用 Attribution-Reporting-Register-SourceAttribution-Reporting-Register-Trigger 頭部進行響應,以完成註冊。

    注意:指定多個 URL 意味著可以在同一功能上註冊多個歸因源。例如,您可能正在嘗試衡量不同廣告系列的成功,這涉及生成關於不同資料的不同報告。

示例

設定空的 attributionSrc

html
<script src="advertising-script.js"></script>
js
const scriptElem = document.querySelector("script");
scriptElem.attributionSrc = "";

設定包含 URL 的 attributionSrc

html
<script src="advertising-script.js"></script>
js
// encode the URLs in case they contain special characters
// such as '=' that would be improperly parsed.
const encodedUrlA = encodeURIComponent("https://a.example/register-source");
const encodedUrlB = encodeURIComponent("https://b.example/register-source");

const scriptElem = document.querySelector("script");
scriptElem.attributionSrc = `${encodedUrlA} ${encodedUrlB}`;

規範

規範
歸因報告
# dom-htmlattributionsrcelementutils-attributionsrc

瀏覽器相容性

另見