HTMLScriptElement: attributionSrc-Eigenschaft
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.
Die attributionSrc
-Eigenschaft des HTMLScriptElement
-Interfaces ruft das Attribut attributionsrc
an einem <script>
-Element ab und setzt es programmatisch, wobei sie den Wert dieses Attributs widerspiegelt. attributionsrc
gibt an, dass Sie möchten, dass der Browser einen Attribution-Reporting-Eligible
-Header zusammen mit der Anforderung für die Skriptressource sendet.
Auf der Serverseite wird dies verwendet, um das Senden eines Attribution-Reporting-Register-Source
- oder Attribution-Reporting-Register-Trigger
-Headers in der Antwort auszulösen, um eine JavaScript-basierte Attributionsquelle bzw. einen Attributionstrigger zu registrieren. Welcher Antwort-Header zurückgesendet werden soll, hängt vom Wert des den Registrierungsvorgang auslösenden Attribution-Reporting-Eligible
-Headers ab.
Hinweis: Alternativ können JavaScript-basierte Attributionsquellen oder -trigger registriert werden, indem eine fetch()
-Anfrage gesendet wird, die die attributionReporting
-Option enthält (entweder direkt im fetch()
-Aufruf gesetzt oder auf einem Request
-Objekt, das in den fetch()
-Aufruf übergeben wird), oder indem ein XMLHttpRequest
mit aufgerufener setAttributionReporting()
auf dem Anforderungsobjekt gesendet wird.
Weitere Details finden Sie in der Attribution Reporting API.
Wert
Ein String. Es gibt zwei Versionen dieser Eigenschaft, die Sie abrufen und festlegen können:
-
Leerer String, d.h.
scriptElem.attributionSrc=""
. Dies gibt an, dass Sie möchten, dass derAttribution-Reporting-Eligible
-Header an denselben Server gesendet wird, auf den dassrc
-Attribut verweist. Dies ist in Ordnung, wenn Sie die Attributionsquellen- oder Triggerregistrierung auf demselben Server handhaben. Beim Registrieren eines Attributionstriggers ist diese Eigenschaft optional, und es wird ein leerer String verwendet, wenn sie weggelassen wird. -
Wert, der eine oder mehrere URLs enthält, zum Beispiel:
jsscriptElem.attributionSrc = "https://a.example/register-source https://b.example/register-source";
Dies ist nützlich in Fällen, in denen die angeforderte Ressource nicht auf einem von Ihnen kontrollierten Server liegt oder Sie einfach die Registrierung der Attributionsquelle auf einem anderen Server handhaben möchten. In diesem Fall können Sie einen oder mehrere URLs als Wert von
attributionSrc
angeben. Wenn die Ressourcenanforderung erfolgt, wird derAttribution-Reporting-Eligible
-Header an die imattributionSrc
angegebene(n) URL(s) zusätzlich zum Ursprungsserver der Ressource gesendet. Diese URLs können dann mit einem entsprechendenAttribution-Reporting-Register-Source
- oderAttribution-Reporting-Register-Trigger
-Header antworten, um die Registrierung abzuschließen.Hinweis: Die Angabe mehrerer URLs bedeutet, dass mehrere Attributionsquellen auf derselben Funktion registriert werden können. Sie könnten beispielsweise verschiedene Kampagnen haben, deren Erfolg Sie messen möchten, was die Generierung unterschiedlicher Berichte über unterschiedliche Daten beinhaltet.
Beispiele
Setzen eines leeren attributionSrc
<script src="advertising-script.js"></script>
const scriptElem = document.querySelector("script");
scriptElem.attributionSrc = "";
Setzen eines attributionSrc mit enthaltenen URLs
<script src="advertising-script.js"></script>
// 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}`;
Spezifikationen
Specification |
---|
Attribution Reporting # dom-htmlattributionsrcelementutils-attributionsrc |
Browser-Kompatibilität
BCD tables only load in the browser