[Alpha]{class="badge informative"}

Différences par rapport à Web SDK

Le Server SDK et le Web SDK partagent le même cœur. Ils envoient donc les données dans le même format, vers les mêmes flux de données et utilisent les mêmes cookies. Étant donné que l’un s’exécute sur un serveur et l’autre dans un navigateur, ils diffèrent de plusieurs façons. Utilisez cette page pour planifier une migration ou pour partager du code entre une implémentation de navigateur et de serveur.

Comparaison comparison

Zone
SDK Web
SDK du serveur
Emplacement où il s’exécute
Le navigateur du visiteur
Votre serveur, dans Node.js ou une autre exécution JavaScript côté serveur. Voir Prise en charge d’Runtime.
Installation
Extension de balise, bibliothèque JavaScript ou package npm @adobe/alloy
Package npm @adobe/alloy-node. Voir Installation.
Comment vous l’appelez
alloy("sendEvent", { ... })
alloy.sendEvent({ ... }). Voir ​ Présentation des méthodes ​.
Instances
Un par chargement de page, pour un visiteur
Un par processus, plus un handle forRequest pour chaque demande du visiteur
Authentification
Aucun
Obligatoire. Les événements sont dirigés vers l’API authentifiée du serveur Edge Network. Voir Authentification.
Identité
Lecture et écriture automatiques dans les cookies de navigateur
Lecture à partir d’un service de cookie que vous fournissez et écriture dans celui-ci. Chaque événement a besoin d’une ​ identité principale ​.
Consentement
defaultConsent accepte "in", "out" et "pending"
defaultConsent accepte les "in" et les "out" uniquement
Personnalisation
Demande, effectue le rendu et le suivi de l’affichage des propositions
Demande des propositions et les renvoie. Ne les effectue pas ni ne suit leur affichage.
Données contextuelles
Détails de la page, de l’appareil, de l’environnement, du lieu et des indications du client du navigateur
Détails d’implémentation, en-têtes de requête transférés par le visiteur et URL de page de l’en-tête de Referer. Voir En-têtes contextuels et transférés.
sendEvent résultat
propositions, inferences et destinations
propositions
Débogage
debugEnabled, setDebug, le paramètre de chaîne de requête alloy_debug et Adobe Experience Platform Debugger
debugEnabled et setDebug, avec des messages écrits dans la console
Crochets de surveillance
L’option monitors et la variable globale __alloyMonitors
L’option monitors de createInstance

Méthodes methods

Le SDK du serveur ajoute la méthode forRequest, qui n’existe pas dans le SDK Web.

Il prend en charge les commandes de SDK Web suivantes en tant que méthodes : appendIdentityToUrl, applyResponse, configure, getIdentity, getLibraryInfo, sendEvent, setConsent et setDebug.

Les commandes Web SDK suivantes ne sont pas disponibles, car elles dépendent d’un navigateur ou de composants que Server SDK n’inclut pas :

  • applyPropositions
  • createMediaSession
  • getMediaAnalyticsTracker
  • sendMediaEvent
  • sendPushSubscription
  • subscribeRulesetItems

Options de configuration configuration

options sendEvent sendevent

Questions fréquentes faq

Puis-je utiliser le SDK du serveur et le SDK Web sur le même site Web ? same-site

Oui. Une tendance courante consiste à demander une personnalisation sur le serveur et à en effectuer le rendu dans le navigateur. Voir Personnalisation hybride. Les deux bibliothèques peuvent envoyer des données au même flux de données si son Type d’accès est Authentification mixte. Les deux utilisent les mêmes noms de cookies pour l’identité et le consentement.

Pourquoi chaque événement a-t-il besoin d’une identité principale ? primary-identity

Le SDK du serveur envoie des événements à l’API du serveur Edge Network authentifiée. Comme la requête provient de votre serveur, Edge Network ne peut pas utiliser les cookies du navigateur du visiteur pour l’identifier. Elle nécessite plutôt une identité principale dans l’événement. Voir xdm.

Puis-je utiliser le SDK du serveur dans les fonctions sans serveur ? serverless

Oui, si l’exécution de la fonction répond aux exigences. Créez et configurez l’instance au niveau supérieur de votre module, en dehors du gestionnaire de fonctions. Ainsi, les appels chauds réutilisent l’instance configurée et son jeton d’accès mis en cache. Appelez forRequest dans le gestionnaire pour chaque appel.

Puis-je utiliser Adobe Experience Platform Debugger ? debugger

Non. Adobe Experience Platform Debugger est une extension de navigateur qui inspecte les pages. Pour déboguer le SDK du serveur, définissez debugEnabled sur true ou appelez setDebug, puis vérifiez le résultat de la console du serveur.

recommendation-more-help
experience-platform-help-collection