Installera Web SDK installing-the-sdk

Det finns tre sätt att installera Adobe Experience Platform Web SDK som stöds:

  1. Det bästa sättet att använda Adobe Experience Platform Web SDK är via användargränssnittet för datainsamling eller användargränssnittet för Experience Platform.
  2. Adobe Experience Platform Web SDK finns också i ett leveransnätverk (CDN) som du kan använda.
  3. Använd NPM-biblioteket som exporterar EcmaScript 5- och EcmaScript 2015-moduler (ES6).

Alternativ 1: Installera taggtillägget

Dokumentation om taggtillägget finns i Dokumentation för taggar

Alternativ 2: Installera den färdigbyggda fristående versionen

Den färdiga versionen finns tillgänglig på ett CDN. Du kan referera till biblioteket på CDN direkt på din sida eller hämta och lagra det på din egen infrastruktur. Den finns i minifierade och ominifierade format. Den ominiatyrversionen är användbar i felsökningssyfte.

URL-struktur: https://cdn1.adoberesources.net/alloy/[VERSION]/alloy.min.js OR alloy.js för den icke-minifierade versionen.

Exempel:

Lägga till koden adding-the-code

Den fördefinierade fristående versionen kräver en "baskod" som läggs till direkt på sidan. Kopiera och klistra in följande "baskod" så hög som möjligt i <head> -tagg på HTML:

<script>
  !function(n,o){o.forEach(function(o){n[o]||((n.__alloyNS=n.__alloyNS||
  []).push(o),n[o]=function(){var u=arguments;return new Promise(
  function(i,l){n[o].q.push([i,l,u])})},n[o].q=[])})}
  (window,["alloy"]);
</script>
<script src="https://cdn1.adoberesources.net/alloy/2.14.0/alloy.min.js" async></script>

"Baskod" skapar en global funktion med namnet alloy. Använd den här funktionen för att interagera med SDK:n. Om du vill ge den globala funktionen ett annat namn ändrar du alloy namn enligt följande:

<script>
  !function(n,o){o.forEach(function(o){n[o]||((n.__alloyNS=n.__alloyNS||
  []).push(o),n[o]=function(){var u=arguments;return new Promise(
  function(i,l){n[o].q.push([i,l,u])})},n[o].q=[])})}
  (window,["mycustomname"]);
</script>
<script src="https://cdn1.adoberesources.net/alloy/2.14.0/alloy.min.js" async></script>

I det här exemplet byter den globala funktionen namn mycustomname, i stället för alloy.

IMPORTANT
Undvik potentiella problem genom att använda ett namn som innehåller minst ett tecken som inte är en siffra och som inte står i konflikt med namnet på en egenskap som redan hittats på window.

Utöver att skapa en global funktion läser den här baskoden in ytterligare kod som finns i en extern fil (alloy.js) lagras på en server. Som standard läses den här koden in asynkront så att webbsidan kan fungera så bra som möjligt. Detta är den rekommenderade implementeringen.

Stöd för Internet Explorer support-internet-explore

IMPORTANT
I slutet av april 2024 kommer Adobe Experience Platform Web SDK att ta bort stöd för alla versioner av Internet Explorer.

Denna SDK använder löften, som är ett sätt att kommunicera slutförandet av asynkrona uppgifter. The Lova implementering som används av SDK stöds internt av alla målwebbläsare utom Internet Explorer. Använda SDK på Internet Explorermåste du ha window.Promise polyfylld.

För att avgöra om du redan har window.Promise polyfylld:

  1. Öppna webbplatsen i Internet Explorer.
  2. Öppna webbläsarens felsökningskonsol.
  3. Typ window.Promise till konsolen och tryck på Enter.

Om något annat än undefined visas, du har antagligen redan polyfyllt window.Promise. Ett annat sätt att avgöra om window.Promise fylls i genom att webbplatsen läses in när ovanstående installationsanvisningar är klara. Om SDK genererar ett fel som talar om något om ett löfte har du troligen inte polyfyllt window.Promise.

Om du har bestämt att du måste polyfyll window.Promiseinkluderar du följande script-tagg ovanför den tidigare angivna baskoden:

<script src="https://cdn.jsdelivr.net/npm/promise-polyfill@8/dist/polyfill.min.js"></script>

Den här taggen läser in ett skript som ser till att window.Promise är en giltig Promise-implementering.

NOTE
Om du väljer att läsa in en annan Promise-implementering måste den ha stöd för Promise.prototype.finally.

Läsa in JavaScript-filen synkront loading-javascript-synchronously

Se avsnittet Lägga till koden, kommer den baskod som du har kopierat och klistrat in på webbplatsens HTML att läsa in en extern fil. Den externa filen innehåller SDK:ns kärnfunktioner. Alla kommandon som du försöker köra när den här filen läses in är köade och bearbetas sedan när filen har lästs in. Inläsning av filen asynkront är den mest prestandametod som krävs för installationen.

Under vissa omständigheter kanske du vill läsa in filen synkront. Om du gör det blockeras resten av HTML-dokumentet från att tolkas och återges av webbläsaren tills den externa filen har lästs in och körts. Denna ytterligare fördröjning innan primärt innehåll visas för användarna rekommenderas vanligtvis inte, men den kan vara bra beroende på omständigheterna.

Om du vill läsa in filen synkront istället för asynkront tar du bort async attribut från andra script tagg enligt nedan:

<script>
  !function(n,o){o.forEach(function(o){n[o]||((n.__alloyNS=n.__alloyNS||
  []).push(o),n[o]=function(){var u=arguments;return new Promise(
  function(i,l){n[o].q.push([i,l,u])})},n[o].q=[])})}
  (window,["alloy"]);
</script>
<script src="https://cdn1.adoberesources.net/alloy/2.14.0/alloy.min.js"></script>

Alternativ 3: Använda NPM-paketet

Adobe Experience Platform Web SDK finns också som NPM-paket. NPM är pakethanteraren för JavaScript. Genom att installera NPM-paketet får du kontroll över byggprocessen för Adobe Experience Platform Web SDK JavaScript. NPM-paketet visar EcmaScript version 5-moduler eller EcmaScript version 2015-moduler (ES6) som ska köras i webbläsaren.

npm install @adobe/alloy

NPM-paketet för Adobe Experience Platform Web SDK visar en createInstance funktion. Den här funktionen används för att skapa en instans. Namnalternativet som skickas till funktionen styr det prefix som används vid loggning. Nedan finns exempel på hur du använder paketet.

Använda paketet som en ECMAScript 2015-modul (ES6)

import { createInstance } from "@adobe/alloy";
const alloy = createInstance({ name: "alloy" });
alloy("config", { ... });
alloy("sendEvent", { ... });
NOTE
NPM-paketet är beroende av CommonJS-moduler, och när du använder ett paket måste du därför se till att paketet har stöd för CommonJS-moduler. Vissa paket, som Samlad, kräver plugin som stöder CommonJS.

Använda paketet som en ECMAScript 5-modul

var alloyLibrary = require("@adobe/alloy");
var alloy = alloyLibrary.createInstance({ name: "alloy" });
alloy("config", { ... });
alloy("sendEvent", { ... });

Stöd för Internet Explorer

Adobe Experience Platform SDK använder löften, som är ett sätt att kommunicera slutförandet av asynkrona uppgifter. The Lova implementering som används av SDK stöds internt av alla målwebbläsare utom Internet Explorer. Använda SDK på Internet Explorermåste du ha window.Promise polyfylld.

Ett bibliotek som man kan använda för att polyfill-löftet är en utfästelse-polyfill. Se dokumentation för promise-polyfill om du vill ha mer information om hur du installerar med NPM.

NOTE
Om du väljer att läsa in en annan Promise-implementering måste den ha stöd för Promise.prototype.finally.
recommendation-more-help
def05a9c-d048-422c-a3a1-88b2de863f4f