[Alpha]{class="badge informative"}
forRequest (Server-SDK)
Die forRequest Methode gibt ein Handle zurück, das sich auf eine einzelne eingehende Anfrage bezieht. Rufen Sie sie für jede Anforderung, die Ihr Server verarbeitet, einmal auf, und rufen Sie dann Methoden wie sendEvent für das Handle auf. Diese Methode ist in der Web-SDK nicht vorhanden, da jede Browserseite bereits von einem einzelnen Besucher bedient wird.
Das Handle wird durch eine eigene SDK-Instanz gestützt, die mit denselben Optionen konfiguriert ist, die Sie an configure übergeben haben. Auf diese Weise dringen die Identität und das Einverständnis eines Besuchers nie in die Anfrage eines anderen Besuchers ein. Unter Instanzen und Anfragen finden Sie eine Erläuterung dessen, was die einzelnen Handles für die Instanz auf oberster Ebene freigeben.
const visitor = alloy.forRequest({
request: req
});
await visitor.sendEvent({
xdm: {
eventType: "web.webpagedetails.pageViews",
identityMap: {
Email: [{ id: "visitor@example.com", primary: true }]
}
}
});
Optionen options
Die forRequest-Methode akzeptiert ein optionales Objekt mit den folgenden Eigenschaften:
requestheaders-Eigenschaft funktioniert, z. B. eine Node.js-IncomingMessage, eine Express-Anfrage oder eine Fetch-API-Request. Die SDK leitet einige der Kopfzeilen des Besuchers an die Edge Network weiter und liest die Referer Kopfzeile. Siehe Kontext und weitergeleitete Kopfzeilen.cookiestoragenetwork, runtime, legacy, globalscreateInstance übergeben haben, nur für dieses Handle. Übergeben Sie network als Funktion, die einen Netzwerkdienst zurückgibt, und die anderen als -Objekte. Siehe Platform-.Das -Handle verwendet nie die cookie oder storage Services wieder, die Sie an createInstance übergeben haben, da diese Services Besucherdaten enthalten. Übergeben Sie sie stattdessen für jede Anfrage an forRequest.
Rückgabewert return
Im Gegensatz zu anderen Methoden gibt forRequest kein Versprechen zurück. Er gibt sofort einen Handle zurück. Das Handle verfügt über die folgenden Methoden, die genauso funktionieren wie in der Instanz auf oberster Ebene:
Das Handle verfügt nicht über configure oder forRequest Methoden, da es bereits konfiguriert ist.
Erstellen Sie für jede Anfrage ein neues Handle. Verwenden Sie kein Handle für mehrere Anfragen oder geben Sie es nicht für andere Besucher frei.
Fehler errors
forRequest gibt einen Fehler aus, wenn Sie ihn aufrufen, bevor configure aufgelöst wird, oder wenn configure abgelehnt wurde:
forRequest() can only be called after configure() has resolved.
Um diesen Fehler zu vermeiden, warten Sie, bis der configure behoben ist, bevor Ihr Server beginnt, Anfragen zu akzeptieren.