[Alpha]{class="badge informative"}
forRequest (Server SDK)
La méthode forRequest renvoie un objet Handle dont la portée est limitée à une seule requête entrante. Appelez-le une fois pour chaque requête gérée par votre serveur, puis appelez des méthodes telles que sendEvent sur le handle. Cette méthode n’existe pas dans Web SDK, car chaque page de navigateur sert déjà un seul visiteur.
Le handle est soutenu par sa propre instance SDK, configurée avec les mêmes options que celles que vous avez transmises à configure. Ainsi, l’identité et le consentement d’un visiteur ne sont jamais divulgués dans la requête d’un autre visiteur. Voir Instances et requêtes pour une explication de ce que chaque gestionnaire partage avec l’instance de niveau supérieur.
const visitor = alloy.forRequest({
request: req
});
await visitor.sendEvent({
xdm: {
eventType: "web.webpagedetails.pageViews",
identityMap: {
Email: [{ id: "visitor@example.com", primary: true }]
}
}
});
Options options
La méthode forRequest accepte un objet facultatif avec les propriétés suivantes :
requestheaders fonctionne, comme un IncomingMessage Node.js, une requête Express ou un Request d’API de récupération. Le SDK transfère certains en-têtes du visiteur vers Edge Network et lit l’en-tête Referer. Voir En-têtes contextuels et transférés.cookiestoragenetwork, runtime, legacy, globalscreateInstance, pour ce descripteur uniquement. Transmettez network en tant que fonction qui renvoie un service réseau et les autres en tant qu’objets . Voir Services Platform.Le handle ne réutilise jamais les services cookie ou storage que vous avez transmis à createInstance, car ces services contiennent des données de visiteur. Transmettez-les plutôt à forRequest pour chaque requête .
Valeur renvoyée return
Contrairement aux autres méthodes, forRequest ne renvoie pas de promesse. Elle renvoie immédiatement une poignée. Le handle possède les méthodes suivantes, qui fonctionnent de la même manière que sur l’instance de niveau supérieur :
Le handle ne dispose pas de méthodes configure ou forRequest, car il est déjà configuré.
Créez un nouveau handle pour chaque requête. Ne réutilisez pas un handle entre les requêtes et ne le partagez pas entre les visiteurs.
Erreurs errors
forRequest renvoie une erreur si vous l’appelez avant la résolution de l’configure ou si configure est rejeté :
forRequest() can only be called after configure() has resolved.
Pour éviter cette erreur, attendez que les configure soient résolus avant que votre serveur ne commence à accepter les requêtes.