De nieuwste versie van at.js in Adobe Target biedt rijke functiesets die uw bedrijf uitrusten om personalisatie uit te voeren op client-side technologieën van de volgende generatie. Deze nieuwe versie wordt geconcentreerd op bevordering at.js om harmonieuze interactie met enige paginatoepassingen (SPAs) te hebben.
Hier volgen enkele voordelen van het gebruik van at.js 2.x die niet beschikbaar in vorige versies zijn:
De capaciteit om alle aanbiedingen op pagina-lading in het voorgeheugen onder te brengen om veelvoudige servervraag aan één enkele servervraag te verminderen.
Verbeter de ervaringen van uw eindgebruikers op uw site aanzienlijk, omdat aanbiedingen direct via het cachegeheugen worden weergegeven zonder vertraging die traditionele serveraanroepen introduceren.
Eenvoudige one-line van code en éénmalige ontwikkelaarsopstelling om uw marketers toe te laten om A/B Test en Experience Targeting (XT) activiteiten via VEC op uw SPAs tot stand te brengen en in werking te stellen.
te.js 2.x systeemdiagrammen
De volgende diagrammen helpen u het werkschema van at.js 2 begrijpen.x met Meningen en hoe dit de integratie van het KUUROORD verbetert. Een betere introductie van de concepten die worden gebruikt in at.js 2.x, zie Enige implementatie van de Toepassing van de Pagina .
(Klik op de afbeelding om deze uit te breiden naar de volledige breedte.)
{modal="regular"}
Bellen
Details
1
De vraag keert Experience Cloud ID terug als de gebruiker voor authentiek wordt verklaard; een andere vraag synchroniseert de klant identiteitskaart
2
De bibliotheek at.js wordt synchroon geladen en de hoofdtekst van het document verborgen.
at.js kan ook asynchroon worden geladen met een optie die fragment verbergt dat op de pagina is geïmplementeerd.
3
Er wordt een aanvraag voor het laden van een pagina ingediend, inclusief alle geconfigureerde parameters (MCID, SDID en klant-id).
4
Profielscripts worden uitgevoerd en vervolgens toegevoegd aan de profielenwinkel. De winkel vraagt om gekwalificeerd publiek uit de Audience Library (bijvoorbeeld een publiek dat wordt gedeeld vanuit Adobe Analytics , Audience Manager , enz.).
Klantkenmerken worden in een batchproces naar de profielopslag verzonden.
5
Op basis van URL-aanvraagparameters en -profielgegevens bepaalt Target welke activiteiten en ervaringen moeten worden geretourneerd naar de bezoeker voor de huidige pagina en de toekomstige weergaven.
6
Gerichte inhoud wordt teruggestuurd naar de pagina, waarbij eventueel ook profielwaarden voor extra personalisatie worden opgenomen.
Gerichte inhoud op de huidige pagina wordt zo snel mogelijk zichtbaar zonder flikkering van de standaardinhoud.
Gerichte inhoud voor meningen die als resultaat aan gebruikersacties in een KUUROORD worden getoond die in browser caching is zodat kan het onmiddellijk zonder een extra servervraag worden toegepast wanneer de meningen door triggerView() worden teweeggebracht.
7
Analytics -gegevens worden verzonden naar gegevensverzamelingsservers.
8
Gericht gegeven wordt aangepast aan Analytics gegevens via SDID en wordt verwerkt tot de Analytics rapportageopslag.
Analytics -gegevens kunnen vervolgens zowel in Analytics als Target via Analytics for Target (A4T) -rapporten worden weergegeven.
Nu, waar triggerView() op uw SPA wordt uitgevoerd, worden de Meningen en de acties teruggewonnen van geheim voorgeheugen en aan de gebruiker zonder een servervraag getoond. triggerView() vraagt ook een melding naar de Target -backend om het aantal impressies te verhogen en op te nemen.
(Klik op de afbeelding om deze uit te breiden naar de volledige breedte.)
{modal="regular"}
Bellen
Details
1
triggerView() wordt geroepen in het KUUROORD om de Mening terug te geven en acties toe te passen om visuele elementen te wijzigen.
2
De gerichte inhoud voor de mening wordt gelezen van het geheime voorgeheugen.
3
Gerichte inhoud wordt zo snel mogelijk zichtbaar zonder flikkering van de standaardinhoud.
4
De aanvraag voor een melding wordt naar de Target Profile Store verzonden om de bezoeker te tellen in de activiteiten en incrementele metingen.
5
Analytics gegevens die naar gegevensverzamelingsservers zijn verzonden.
6
Target -gegevens komen overeen met Analytics -gegevens via de SDID en worden verwerkt in de Analytics -rapportageopslag. Analytics -gegevens kunnen vervolgens zowel in Analytics als Target via A4T-rapporten worden weergegeven.
Het implementeren van at.js met tags in Adobe Experience Platform heeft de voorkeur.
of
Handmatig downloaden om.js 2.x gebruikend Target UI en stel het op gebruikend de methode van uw keus .
Vervangen at.js-functies
Er zijn verschillende functies die zijn vervangen in at.js 2.x.
WARNING
Als deze vervangen functies nog steeds op uw site worden gebruikt wanneer at.js 2.x wordt opgesteld, zult u consolewaarschuwingen zien. De aanbevolen aanpak bij de upgrade is het testen van de implementatie van at.js 2.x in een het opvoeren milieu en zorg ervoor om door elk en elke waarschuwing te gaan die in de console is geregistreerd en de vervangen functies aan nieuwe die functies vertalen in at.js 2 worden geïntroduceerd.x.
U kunt de vervangen functies en hun tegenhanger hieronder vinden. Voor een volledige lijst van functies, zie at.js functies .
NOTE
te.js 2.x niet meer automatisch pre-verbergt mboxDefault duidelijke elementen. Klanten moeten daarom de vooraf verborgen logica handmatig op de site of via een tagmanager kunnen gebruiken.
mboxCreate(mbox,params)
Beschrijving:
Voert een aanvraag uit en past de aanbieding toe op de dichtstbijzijnde DIV met de klassenaam mboxDefault .
Voorbeeld:
<div class="mboxDefault">
default content to replace by offer
</div>
<script>
mboxCreate('mboxName','param1=value1','param2=value2');
</script>
at.js 2.x equivalent
Een alternatief voor mboxCreate(mbox, params) is getOffer() en applyOffer() .
Voorbeeld:
<div class="mboxDefault">
default content to replace by offer
</div>
<script>
var el = document.currentScript.previousElementSibling;
adobe.target.getOffer({
mbox: "mboxName",
params: {
param1: "value1",
param2: "value2"
},
success: function(offer) {
adobe.target.applyOffer({
mbox: "mboxName",
selector: el,
offer: offer
});
},
error: function(error) {
console.error(error);
el.style.visibility = "visible";
}
});
</script>
mboxDefine() en mboxUpdate()
Beschrijving:
Maakt een interne toewijzing tussen een element en een naam van een box, maar voert de aanvraag niet uit. Wordt gebruikt in combinatie met mboxUpdate() , die de aanvraag uitvoert en de aanbieding toepast op het element dat wordt geïdentificeerd door de nodeId in mboxDefine() . Kan ook worden gebruikt om een door mboxCreate geïnitieerde box bij te werken.
Een alternatief voor mboxDefine() en mboxUpdate is getOffer() en applyOffer() , met de selectoroptie gebruikt in applyOffer() . Met deze methode kunt u de aanbieding aan een element toewijzen met elke CSS-kiezer, niet alleen met een id.
Verstrekt een standaardmanier om een specifieke uitbreiding te registreren.
Dit wordt niet meer ondersteund en mag niet worden gebruikt.
Overzicht van vervangen, nieuwe en ondersteunde at.js-functies in 2.x
Methode
Ondersteund?
Nieuw?
Vervangen?
(Standaardinhoud wordt weergegeven)
getOffer()
Ja
getOffers()
Ja
applyOffer()
Ja
applyOffers()
Ja
triggerView()
Ja
trackEvent()
Ja
mboxCreate()
Ja
mboxDefine()
mboxUpdate()
Ja
targetGlobalSettings()
Ja
Data Providers
Ja
targetPageParams()
Ja
targetPageParamsAll()
Ja
registerExtension()
Ja
At.js Custom Events
Ja
Beperkingen en callouts
Houd rekening met de volgende beperkingen en bijschriften:
Conversie bijhouden
Klanten die mboxCreate() gebruiken voor het bijhouden van conversies, moeten trackEvent() of getOffer() gebruiken.
Levering aanbieden
Klanten die mboxCreate() niet vervangen door getOffer() of applyOffer() , lopen het risico dat er geen voorstellen worden geleverd.
Mag om.js 2.x wordt gebruikt op sommige pagina’s terwijl at.js 1.x is op andere pagina’s?
Ja, het bezoekersprofiel blijft op alle pagina’s behouden met verschillende versies en bibliotheken. De cookieindeling is hetzelfde.
Nieuw API-gebruik in at.js 2.x
te.js 2.x gebruikt nieuwe API, die wij levering API roepen. Om te zuiveren of at.js correct de Target randserver roept, kunt u het lusje van het Netwerk van de Hulpmiddelen van de Ontwikkelaar van uw browser aan “levering”, "tt.omtrdc.net,"of uw cliëntcode filtreren. U zult ook merken dat Target een JSON-lading verzendt in plaats van sleutel-waardeparen.
Target Globale box wordt niet meer gebruikt
In at.js 2.x, ziet u niet meer "target-global-mbox"zichtbaar in de netwerkvraag. In plaats daarvan hebben we de syntaxis “target-global-mbox” vervangen in “execute > pageLoad” in de JSON-lading die naar de Target -servers wordt verzonden, zoals hieronder wordt getoond:
Het algemene mbox-concept is geïntroduceerd om Target te laten weten of aanbiedingen en inhoud moeten worden opgehaald tijdens het laden van de pagina. Daarom hebben we dit in onze nieuwste versie duidelijker gemaakt.
Maakt de globale naam van de box in at.js nog uit?
Klanten kunnen de naam van een globale box opgeven via Target > Administration > Implementation > Edit at.js Settings . Deze instelling wordt door de Edge-servers van Target gebruikt om uitvoering > pageLoad om te zetten in de algemene naam van het selectievakje die in de gebruikersinterface van Target wordt weergegeven. Hierdoor kunnen klanten API’s aan de serverzijde, de op formulieren gebaseerde composer, profielscripts blijven gebruiken en een publiek maken met de algemene mbox-naam. We raden u ten zeerste aan om ook ervoor te zorgen dat dezelfde algemene naam van het selectievakje is geconfigureerd op de pagina Administration > Visual Experience Composer , voor het geval dat er nog pagina’s zijn die at.js 1 gebruiken.x, zoals aangetoond in de volgende illustraties.
en
Moet de instelling voor automatisch maken van globale mbox worden ingeschakeld voor at.js 2.x?
In de meeste gevallen ja. Deze instelling vertelt at.js 2.x om een verzoek aan de Target Edge servers op paginading in brand te steken. Omdat globale mbox wordt vertaald om uit te voeren > pageLoad, en als u een verzoek op paginading wilt in werking stellen, dan zou deze het plaatsen moeten zijn.
Zal de bestaande activiteiten VEC blijven werken, hoewel de doel globale mbox naam niet van at.js 2 wordt gespecificeerd.x?
Ja, omdat execute > pageLoad op de Target backend wordt behandeld als target-global-mbox .
Als mijn op vorm-gebaseerde activiteiten aan target-global-mbox worden gericht, zullen die activiteiten blijven werken?
Ja, omdat execute > pageLoad op de Target edge servers wordt behandeld zoals target-global-mbox .
Ondersteund en niet-ondersteund at.js 2.x Montages
Instelling
Ondersteund?
X-domein
Nee
Globale box automatisch maken
Ja
Algemene naam van box
Ja
Ondersteuning voor interdomeintracering in at.js 2.x
Met interdomeinspatiëring kunt u bezoekers aan elkaar koppelen in verschillende domeinen. Omdat voor elk domein een nieuwe cookie moet worden gemaakt, is het moeilijk bezoekers bij te houden wanneer ze van domein naar domein navigeren. Target gebruikt een cookie van een andere fabrikant om bezoekers in verschillende domeinen bij te houden. Op deze manier kunt u een Target -activiteit maken die siteA.com en siteB.com omvat en bezoekers in dezelfde ervaring blijven wanneer ze door unieke domeinen navigeren. Deze functionaliteit past in het cookie-gedrag van derden en van andere bedrijven van Target.
NOTE
Interdomeintracering wordt ondersteund vanaf at.js 2.10, maar niet offline in at.js 2.x voorafgaand aan 2.10. Interdomeintracering wordt ondersteund in at.js 2.x via de (ECID) bibliotheek van Experience Cloud identiteitskaart v4.3.0+.
In Target wordt het cookie van derden opgeslagen in <CLIENTCODE>.tt.omtrdc.net . Het cookie van de eerste partij wordt opgeslagen in clientdomain.com . De eerste aanvraag retourneert HTTP-antwoordheaders die proberen cookies van derden met de naam mboxSession en mboxPC in te stellen, terwijl een omleidingsverzoek wordt teruggestuurd met een extra parameter (mboxXDomainCheck=true). Als de browser cookies van derden accepteert, bevat de omleidingsaanvraag deze cookies en wordt de ervaring geretourneerd. Deze workflow is mogelijk omdat we de HTTP GET-methode gebruiken.
In punt 2.js.x, wordt HTTP GET niet gebruikt. In plaats daarvan wordt HTTP POST gebruikt via at.js 2.x om JSON- nuttige ladingen naar Target servers van Edge te verzenden. Het gebruiken van HTTP POST betekent het omleidingsverzoek om te controleren of browser derde koekjes zal breken. Dit komt doordat HTTP GET-aanvragen epidemiologische transacties zijn, terwijl HTTP POST niet-epidemiologisch is en niet willekeurig mag worden herhaald. Daarom is het volgen tussen domeinen in at.js 2.x (voorafgaand aan 2.10) wordt niet gesteund uit de doos. Alleen om.js 1.x heeft uit-van-de-doos steun voor dwars-domein het volgen.
Als u interdomeintracering wilt gebruiken voor at.js v2.10 of hoger, kunt u een van de volgende handelingen uitvoeren:
Installeer de ECID bibliotheek v4.3.0+ samen met at.js 2.x. De ECID-bibliotheek bestaat voor het beheer van permanente id’s waarmee een bezoeker zelfs in verschillende domeinen kan worden geïdentificeerd. Na installatie van de ECID-bibliotheek v4.3.0+ en at.js 2.x, zult u activiteiten kunnen tot stand brengen die unieke domeinen evenals spoorgebruikers omspannen. Het is belangrijk om op te merken dat deze functionaliteit slechts werkt nadat de zitting verloopt.
Als u at.js v2.10 of hoger hebt, kunt u in plaats van de ECID-bibliotheek te installeren de instelling Cross-Domain inschakelen in de Target gebruikersinterface in Administration > Implementation . (Alternatief, kunt u de crossDomain optie aan plaatsen toegelaten in de code at.js.)
Interdomeintracering gebruiken voor versies van at.js v2.x voorafgaand aan 2.10, kunt u optie #1 hierboven uitvoeren (installeer de bibliotheek ECID).
Automatisch globale box maken wordt ondersteund
Deze instelling vertelt at.js 2.x om een verzoek aan de Target Edge servers op pagina-lading in brand te steken. Omdat het algemene mbox wordt vertaald om > pageLoad uit te voeren, en dit wordt geïnterpreteerd door de Target Edge-servers, moeten klanten dit inschakelen als ze een aanvraag willen indienen bij het laden van een pagina.
Algemene naam van box wordt ondersteund
Klanten kunnen de naam van een globale box opgeven via Target > Administration > Implementation > Edit . Deze instelling wordt door de Edge-servers van Target gebruikt om uitvoering > pageLoad om te zetten in de ingevoerde algemene naam van het selectievakje. Hierdoor kunnen klanten API’s aan de serverzijde, de op formulieren gebaseerde composer, profielscripts blijven gebruiken en een publiek maken dat zich richt op de algemene box.
Zijn de onderstaande aangepaste gebeurtenissen at.js van toepassing op triggerView() of is het alleen voor applyOffer() of applyOffers() ?
adobe.target.event.CONTENT_RENDERING_FAILED
adobe.target.event.CONTENT_RENDERING_SUCCEEDED
adobe.target.event.CONTENT_RENDERING_NO_OFFERS
adobe.target.event.CONTENT_RENDERING_REDIRECT
Ja, de aangepaste gebeurtenissen at.js zijn ook van toepassing op triggerView() .
Er staat: wanneer ik triggerView() aanroep met &stempel;accolade; "page" : "true" &trace; er wordt een melding naar de Target -backend verzonden en de indruk vergroot. Zorgt het er ook voor dat de profielscripts worden uitgevoerd?
Wanneer een prefetch-aanroep naar de Target backend wordt gemaakt, worden de profielscripts uitgevoerd. Daarna worden de profielgegevens gecodeerd en teruggestuurd naar de clientzijde. Nadat triggerView() met {"page": "true"} is aangeroepen, wordt een melding samen met de gecodeerde profielgegevens verzonden. Dit is wanneer de Target backend dan de profielgegevens zal decrypteren en in de gegevensbestanden opslaat.
Moeten we code toevoegen die u vooraf verbergt voordat u triggerView() aanroept om flikkering te beheren?
Nee, u hoeft geen voorverborgen code toe te voegen voordat u triggerView() aanroept. te.js 2.x beheert het pre-verbergen en flikkeren logica alvorens de mening wordt getoond en toegepast.
welke om.js 1.x parameters voor het creëren van publiek worden niet gesteund in at.js 2.x?
De volgende parameters at.js 1.x worden NIET momenteel gesteund voor publieksverwezenlijking wanneer het gebruiken van at.js 2.x:
browserHeight
browserWidth
browserTimeOffset
screenHeight
screenWidth
screenOrientation
colorDepth
devicePixelRatio
vst.* parameters (zie hieronder)
te.js 2.x steunt het creëren van publiek niet gebruikend vst.* parameters
Klanten op om.js 1.x kon vst gebruiken.* mbox-parameters om een publiek te maken. Dit was een onbedoeld neveneffect van hoe at.js 1.x verzond mbox parameters naar het Target achterste eind. Na het migreren naar om.js 2.x, kunt u geen publiek meer tot stand brengen gebruikend deze parameters omdat at.js 2.x verzendt verschillend mbox parameters.
at.js-compatibiliteit
In de volgende tabellen wordt om .js uitgelegd. 2.x verenigbaarheid met verschillende activiteitentypes, integratie, eigenschappen, en functies at.js.
Typen activiteiten
Type
Ondersteund?
A/B Test
Ja
Auto-Allocate
Ja
Auto-Target
Ja
Experience Targeting
Ja
Multivariate Test
Ja
Automated Personalization
Ja
Recommendations
Ja
NOTE
Auto-Target -activiteiten worden ondersteund via at.js 2.x en VEC wanneer alle wijzigingen op Page Load Event worden toegepast. Wanneer wijzigingen worden toegevoegd aan bepaalde weergaven, worden alleen A/B Test -, Auto-Allocate - en Experience Targeting -activiteiten (XT) ondersteund.
te.js 2.x, enkel als at.js 1.x, gebruikt de douanegebeurtenis at-request-succeeded aan tokens van de oppervlakreactie. Voor codevoorbeelden die de at-request-succeeded douanegebeurtenis gebruiken, zie Tokens van de Reactie .
te.js 1.x parameters aan at.js 2.x lading afbeelding
In deze sectie worden de toewijzingen tussen at.js 1 beschreven.x en at.js 2.x.
Voordat u gaat overstappen op parametertoewijzing, zijn de eindpunten die in deze bibliotheekversies worden gebruikt, gewijzigd:
te.js 1.x - de code van de Cliënt maakt deel uit van de weg
te.js 2.x - de code van de cliënt wordt verzonden als parameter van het vraagkoord, zoals: http://<client code>.tt.omtrdc.net/rest/v1/delivery?client=democlient
De volgende secties maken een lijst van elk bij.js 1.x parameter, zijn beschrijving, en overeenkomstige 2.x nuttige lading JSON (als toepasselijk):
De WEB GL-renderermogelijkheden van de browser. Dit wordt gebruikt door ons mechanisme voor apparaatdetectie om te bepalen of het apparaat van de bezoeker een bureaublad, iPhone, Android, enz. is.
Versie wordt verzonden als parameter van het vraagkoord via de versieparameter.
Trainingsvideo: at.js 2.x architecturaal diagram
te.js 2.x verbetert Adobe Target steun voor SPAs en integreert met andere oplossingen van Experience Cloud. In deze video wordt uitgelegd hoe alles bij elkaar komt.