Använda ID-tjänsten med A4T och en implementering på serversidan av Target using-the-id-service-with-a-t-and-a-server-side-implementation-of-target
Dessa instruktioner är till för A4T-kunder med blandade server- och klientimplementeringar av Target, Analytics och ID-tjänsten. Kunder som behöver köra ID-tjänsten i en NodeJS- eller Rhino-miljö bör också granska den här informationen. Den här instansen av ID-tjänsten använder en förkortad version av kodbiblioteket VisitorAPI.js, som du hämtar och installerar från NPM (Node Package Manager). I det här avsnittet finns installationsanvisningar och andra konfigurationskrav.
Introduktion section-ab0521ff5bbd44c592c3eaab31c1de8b
A4T (och andra kunder) kan använda den här versionen av ID-tjänsten när de behöver:
- Återge webbsidesinnehåll på deras servrar och skicka det till en webbläsare för slutlig visning.
- Gör Target anrop på serversidan.
- Gör klientanrop (i webbläsaren) till Analytics.
- Synkronisera separata Target- och Analytics-ID:n för att avgöra om en besökare som ses av en lösning är samma person som den andra lösningen.
Kodnedladdning och medföljande gränssnitt section-32d75561438b4c3dba8861be6557be8a
Se ID-tjänstens NPM-databas för att hämta kodpaketet på serversidan och granska gränssnitten som ingår i den aktuella versionen.
Arbetsflöde section-56b01017922046ed96536404239a272b
Diagrammet och avsnitten nedan beskriver vad som händer och vad du behöver konfigurera i varje steg i implementeringsprocessen på serversidan.
Steg 1: Begär sida section-c12e82633bc94e8b8a65747115d0dda8
Aktiviteten på serversidan börjar när en besökare gör en HTTP-begäran om att läsa in en webbsida. Under det här steget tar servern emot den här begäran och söker efter AMCV-cookien. AMCV-cookien innehåller besökarens Experience Cloud-ID (MID).
Steg 2: Generera nyttolast för ID-tjänst section-c86531863db24bd9a5b761c1a2e0d964
Därefter måste du skapa en payload request
på serversidan till ID-tjänsten. En nyttolastbegäran:
- Skickar AMCV-cookien till ID-tjänsten.
- Begär data som krävs av Target och Analytics i efterföljande steg som beskrivs nedan.
Nyttolastbegäran ska se ut så här: I kodexemplet är funktionen visitor.setCustomerIDs
valfri. Mer information finns i Kund-ID:n och autentiseringstillstånd.
//Import the ID service server package
var Visitor = require("@adobe-mcid/visitor-js-server");
//Pass in your Organization ID to instantiate Visitor
var visitor = new Visitor("Insert Experience Cloud ID here");
//
<i>(Optional)</i> Set a custom customer ID
visitor.setCustomerIDs({
userid:{
id:"1234",
authState: Visitor.AuthState.UNKNOWN //AuthState is a static property of the Visitor class
}
});
//Parse the visitor's HTTP request for the AMCV cookie
var cookies = cookie.parse(req.headers.cookie || "");
var cookieName = visitor.getCookieName(); // Visitor API that returns the cookie name.
var amcvCookie = cookies[cookieName];
//Generate the payload request pass your mbox name and the AMCV cookie if present
var visitorPayload = visitor.generatePayload({
mboxName: "bottom-banner-mbox",
amcvCookie: amcvCookie
});
ID-tjänsten returnerar nyttolasten i ett JSON-objekt som liknar följande exempel. Nyttolastdata krävs av Target.
{
"marketingCloudVisitorId": "02111696918527575543455026275721941645",
"mboxParameters": {
"mboxAAMB": "abcd1234",
"mboxMCGLH": "9",
"mboxMCSDID": "56BE026543F7E211-1CC51BCAAE88F0D2",
"vst.userid.id": "1234567890",
"vst.userid.authState": 0
}
}
Om besökaren inte har en AMCV-cookie utelämnar nyttolasten följande nyckelvärdepar:
marketingCloudvisitorId
mboxAAMB
mboxMCGLH
Steg 3: Lägg till nyttolast i Target-anropet section-62451aa70d2f44ceb9fd0dc2d4f780f7
När servern har tagit emot nyttolastdata från ID-tjänsten måste du initiera ytterligare kod för att sammanfoga den med data som skickats till Target. Det sista JSON-objektet som skickas till Target ser ut ungefär så här:
{
"mbox" : "target-global-mbox",
"marketingCloudVisitorId":"02111696918527575543455026275721941645",
"requestLocation" : {
"pageURL" : "http://www.domain.com/test/demo.html",
"host" : "localhost:3000"
},
"mboxParameters" : {
"mboxAAMB" : "abcd1234",
"mboxMCGLH" : "9",
"mboxMCSDID": "56BE026543F7E211-1CC51BCAAE88F0D2",
"vst.userid.id": "1234567890",
"vst.userid.authState": 0,
}
}
Steg 4: Hämta servertillstånd för ID-tjänsten section-8ebfd177d42941c1893bfdde6e514280
Serverstatusdata innehåller information om arbete som har utförts på servern. Koden för klient-side ID-tjänsten kräver den här informationen. Kunder som har implementerat ID-tjänsten via Dynamic Tag Manager (DTM) kan konfigurera DTM så att servertillståndsdata skickas via det verktyget. Om du har konfigurerat ID-tjänsten via en icke-standardprocess måste du returnera servertillståndet med din egen kod. Klientsidans ID-tjänst och Analytics-kod skickar lägesdata till Adobe när sidan läses in.
Hämta servertillstånd via DTM
Om du har implementerat ID-tjänsten med DTM måste du lägga till kod på sidan och ange ett namn/värde-par i DTM-inställningarna.
Sidkod
Lägg till den här koden i taggen <head>
på HTML-sidan:
//Get server state
var serverState = visitor.getState();
Response.send("
...
<head>
<script>
//Add 'serverState' as a stringified JSON global variable.
"var serverState = "+ JSON.stringify(serverState) +";
</script>
<script src = "DTM script (satellite JS)">
</script>
</head>
...
DTM-inställningar
Lägg till dessa som namn/värde-par i avsnittet General > Settings i din ID-tjänstinstans:
-
Name: serverState
-
Value: %serverState%
note important IMPORTANT Värdenamnet måste matcha variabelnamnet som du angav för serverState
i sidkoden.
Dina konfigurerade inställningar bör se ut så här:
Hämta servertillstånd utan DTM
Om du har en icke-standardimplementering av ID-tjänsten måste du konfigurera den här koden så att den körs på servern medan den sammanställer den begärda sidan:
//Get server state
var serverState = visitor.getState();
Response.send("
...
<head>
<script src="VisitorAPI.js"></script>
<script>
var visitor = Visitor.getInstance(orgID, {
serverState: serverState
...
</script>
</head>
...
Steg 5: Servera en sida och returnera data från Experience Cloud section-4b5631a0d75a41febd6f43f8c214c263
Nu skickar webbservern sidinnehåll till besökarens webbläsare. Från och med nu gör webbläsaren (inte servern) alla återstående ID-tjänster och Analytics anrop. I webbläsaren:
- ID-tjänsten tar emot tillståndsdata från servern och skickar SDID till AppMeasurementet.
- AppMeasurementet skickar data om sidträffen till Analytics, inklusive SDID.
- Analytics och Target jämför SDID:n för den här besökaren. Med ett identiskt SDID sammanfogar Target och Analytics anropet på serversidan och anropet på klientsidan. Nu ser båda lösningarna besökaren som samma person.