Aides Javascript serverside
Cet article décrit les APIs de destination server-side.
decodeURI
decodeURIDécode tous les caractères encodés dans l'URI fourni. Renvoie un string qui représente l'URI décodé. Renvoie undefined lorsqu'il est fourni avec une entrée invalide.
Syntaxe
decodeUri(encoded_uri);Exemple
const decodeUri = require('decodeUri');
const decodedUrl = decodeUri(data.encodedUrl);
if (decodedUrl) {
// ...
}decodeUriComponent
decodeUriComponentDécode tous les caractères encodés dans le composant URI fourni. Renvoie un string qui représente le composant URI décodé. Renvoie undefined si l'entrée est invalide.
Syntaxe
decodeUriComponent(encoded_uri_component);Exemple
encoded_uri_component
string
Un composant URI qui a été encodé par encodeUriComponent() ou par d'autres moyens.
encodeUri
encodeUriRenvoie un Uniform Resource Identifier (URI) encodé en échappant les caractères spéciaux. Renvoie un string qui représente la chaîne fournie encodée en tant qu'URI.
Syntaxe
Exemple
uri
string
Un URI complet.
encodeUriComponent
encodeUriComponentRenvoie un Uniform Resource Identifier (URI) encodé en échappant les caractères spéciaux. Renvoie un string qui représente la chaîne fournie encodée en tant qu'URI.
Syntaxe
Exemple
str
string
Un composant d'un URI.
fromBase64
fromBase64Décode une chaîne encodée en base64. Renvoie undefined si l'entrée est invalide.
Syntaxe
Exemple
base64EncodedString
string
Chaîne encodée en base64.
generateRandom
generateRandomRenvoie un nombre (entier) dans l'intervalle donné.
Syntaxe
Exemple
min
nombre
Valeur potentielle minimale de l'entier renvoyé (inclus).
max
nombre
Valeur potentielle maximale de l'entier renvoyé (inclus).
getAllEventData
getAllEventDataRenvoie une copie des données de l'événement.
Syntaxe
Exemple d'utilisation
Notez que les données de l'événement peuvent contenir plus de propriétés que ce que vous avez envoyé initialement à cause des propriétés système qui sont ajoutées automatiquement sur les événements web et les événements app sdk.
Exemple de données :
Si vous envoyez cet événement web :
Alors la fonction getAllEventData() renverra cet objet :
getCookieValues
getCookieValuesRenvoie un tableau contenant les valeurs de tous les cookies portant le nom donné.
Syntaxe
Exemple
Paramètres
name
string
Nom du cookie.
noDecode
boolean
Si true, les valeurs du cookie ne seront pas décodées avant d'être renvoyées. La valeur par défaut est false.
getEventData
getEventDataRenvoie une copie de la valeur au chemin donné dans les données de l'événement. Renvoie undefined s'il n'y a pas de données d'événement ou s'il n'y a pas de valeur au chemin donné.
Syntaxe
Exemple
Paramètres
keyPath
any
Le chemin de la clé, où les composants du chemin sont séparés par des points. Les composants du chemin peuvent être des clés dans un objet ou des indices dans un tableau. Si keyPath n'est pas une chaîne, il est converti en chaîne.
getRemoteAddress
getRemoteAddressRenvoie une string représentation de l'adresse IP à partir de laquelle la requête a été initiée, par ex. 62.123.65.780 pour IPv4 ou 2001:0db8:85a3:0:0:8a2e:0370:1234 pour IPv6
Syntaxe
getTimestamp
getTimestampObsolète. Préférez getTimestampMillis.
Renvoie une nombre qui représente l'heure actuelle en millisecondes depuis l'époque Unix, comme renvoyé par Date.now().
Syntaxe
getTimestampMillis
getTimestampMillisRenvoie une nombre qui représente l'heure actuelle en millisecondes depuis l'époque Unix, comme renvoyé par Date.now().
Syntaxe
getType
getTypeRenvoie une chaîne décrivant le type de la valeur donnée.
string
'string'
nombre
'number'
boolean
'boolean'
null
'null'
undefined
'undefined'
Array
'array'
Object
'object'
Function
'function'
Syntaxe
Exemple
Paramètres
value
any
Valeur d'entrée.
logToConsole
logToConsoleJournalise son ou ses arguments dans la console.
Ces journaux sont visibles dans la console de Destination Builder.
Exemple
Syntaxe
Paramètres
La fonction prend un ou plusieurs arguments, chacun étant converti en chaîne si nécessaire, puis journalisé dans la console.
makeInteger
makeIntegerConvertit la valeur donnée en un nombre (entier).
Syntaxe
Paramètres
value
any type
La valeur à convertir.
makeNumber
makeNumberConvertit la valeur donnée en un nombre.
Syntaxe
Paramètres
value
any type
La valeur à convertir.
makeString
makeStringRenvoie la valeur donnée sous forme de string.
Syntaxe
Paramètres
value
any type
La valeur à convertir.
parseUrl
parseUrlRenvoie un objet contenant toutes les parties d'un URL donné, semblable à l' URL objet.
Cette API renverra undefined pour tout URL mal formé. Pour les URL correctement formatés, les champs absents de la chaîne d'URL auront une valeur de chaîne vide, ou dans le cas de searchParams, un objet vide.
L'objet renvoyé aura les champs suivants :
Syntaxe
Exemple
Paramètres
url
string
L'url complète qui sera analysée.
sha256
sha256Calcule le digest SHA-256 de l'entrée et invoque un callback avec le digest encodé en base64, sauf si l' options objet spécifie un autre encodage de sortie.
Cette signature et ce comportement de l'API correspondent à l' sha256 API pour les conteneurs web ; toutefois, les modèles personnalisés dans les conteneurs serveur doivent utiliser l' sha256Sync API pour un code plus simple.
Syntaxe
Exemple
Paramètres
input
string
La chaîne à hacher.
onSuccess
function
Appelé avec le digest résultant, encodé en base64, sauf si l' options objet spécifie un autre encodage de sortie.
options
object
Facultatif objet options pour spécifier l'encodage de sortie. Si elle est spécifiée, l'objet doit contenir la clé outputEncoding avec comme valeur l'une de base64 ou hex.
sha256Sync
sha256SyncCalcule et renvoie le digest SHA-256 de l'entrée, encodé en base64, sauf si l' options objet spécifie un autre encodage de sortie.
Syntaxe
Exemple
Paramètres
input
string
La chaîne à hacher.
options
object
Facultatif objet options pour spécifier l'encodage de sortie. Si elle est spécifiée, l'objet doit contenir la clé outputEncoding avec comme valeur l'une de base64 ou hex.
signHmac
signHmacGénère une signature HMAC pour le payload donné, en utilisant sha256 et base64 l'encodage par défaut, sauf si l' options objet spécifie autre chose. Les objets passés comme payload sont automatiquement JSON.stringifyés. Renvoie un string.
Syntaxe
Exemple
Paramètres
payload
string|object
Les données à signer. Les objets sont automatiquement convertis en chaînes JSON.
secret
string
La clé secrète utilisée pour la génération HMAC.
options
object
Facultatif objet options pour personnaliser l'algorithme et l'encodage de sortie. Voir les détails des options ci-dessous.
Options
alg
string
'sha256'
L'algorithme de hachage. Valeurs prises en charge : 'sha256', 'sha1', 'sha512', 'sha384', 'md5' et d'autres algorithmes de digest OpenSSL.
outputEncoding
string
'base64'
L'encodage de sortie. Valeurs prises en charge : 'base64', 'base64url', 'hex', 'binary' (latin1).
toBase64
toBase64Encode une chaîne en base64.
Syntaxe
Exemple
Paramètres
input
string
Chaîne à encoder.
JSON
JSONRenvoie un objet qui fournit des fonctions JSON.
Le parse() la fonction analyse une chaîne JSON pour construire la valeur ou l'objet décrit par la chaîne. Si la valeur ne peut pas être analysée (JSON mal formé), la fonction renverra undefined. Si la valeur d'entrée n'est pas une chaîne, l'entrée sera convertie en chaîne.
Le stringify() la fonction convertit l'entrée en chaîne JSON. Si la valeur ne peut pas être analysée (par ex. l'objet a un cycle), la méthode renverra undefined.
Syntaxe
Exemple
Math
MathUn objet fournissant des fonctions Math .
Syntaxe
Paramètres
Les paramètres des fonctions Math sont convertis en nombres.
sendHttpGet
sendHttpGetEffectue une requête HTTP GET vers l'URL spécifiée et invoque un callback avec la réponse une fois la requête terminée ou expirée.
Syntaxe
Exemple
Paramètres
url
string
L'URL de la requête.
callback
function
Un callback optionnel à invoquer à la fin de la requête, en cas d'erreur ou d'expiration.
Il est invoqué avec le code de statut de la réponse, le en-têtes de réponse, et le corps de la réponse (ou undefined s'il n'y avait pas de corps de réponse).
Si la requête a échoué (par ex. URL invalide, aucune route vers l'hôte, échec de la négociation SSL, etc.), le callback sera invoqué avec un code de statut de réponse de zéro, aucun en-tête, et un corps undefined.
Si l' 'timeout' option a été définie et que la requête a expiré, le callback sera invoqué avec un code de statut de réponse de -1, aucun en-tête, et un corps undefined.
options
object
Options de requête facultatives. Les options prises en charge sont headers, timeout. Des options avancées peuvent être ajoutées dans extraOptions
Options
headers: En-têtes de requête supplémentaires représentés sous forme d'objet.
timeout: Le délai d'expiration, en millisecondes, avant l'abandon de la requête.
extraOptions: Options avancées (ex. : {strictSSL:true})
sendHttpRequest
sendHttpRequestEffectue une requête HTTP vers l'URL spécifiée et invoque un callback avec la réponse une fois la requête terminée ou expirée.
Syntaxe
Exemple
Paramètres
url
string
L'URL de la requête.
callback
function
Un callback optionnel à invoquer à la fin de la requête, en cas d'erreur ou d'expiration. Il est invoqué avec le code de statut de la réponse, le en-têtes de réponse, et le corps de la réponse (ou undefined s'il n'y avait pas de corps de réponse). Si la requête a échoué (par ex. URL invalide, aucune route vers l'hôte, échec de la négociation SSL, etc.), le callback sera invoqué avec un code de statut de réponse de zéro, aucun en-tête, et un corps undefined. Si l'option 'timeout' a été définie et que la requête a expiré, le callback sera invoqué avec un code de statut de réponse de -1, aucun en-tête, et un corps undefined.
options
object
Options de requête facultatives. Les options prises en charge sont : headers, method, et timeout. Les clés d'options inconnues sont ignorées. Des options avancées peuvent être ajoutées dans extraOptions.
body
string
Corps de requête facultatif.
Options
headers: En-têtes de requête supplémentaires.
method: La méthode de requête, par défaut 'GET'.
timeout: Le délai d'expiration, en millisecondes, avant l'abandon de la requête.
extraOptions: Options avancées (ex. : {strictSSL:true})
md5Sync
md5SyncCalcule et renvoie le md5 digest de l'entrée.
Syntaxe
Exemple
templateDataStorage
templateDataStorageLe templateDataStorage l'assistant permet le stockage temporaire et la récupération de données, telles que des jetons API, pendant l'exécution du script. Il est particulièrement utile pour la mise en cache de données réutilisables afin de réduire les appels API redondants. Les données stockées dans templateDataStorage persistent sur le serveur exécutant le modèle. Comme les modèles s'exécutent sur plusieurs serveurs, et que chaque serveur peut avoir plusieurs instances, il n'est pas garanti que les données stockées soient accessibles pour toutes les exécutions ultérieures du modèle.
Syntaxe
Exemple : gérer des jetons API
setItemCopy(key, value)
Stocke une valeur sous la clé spécifiée. Écrase la valeur si la clé existe déjà.
getItemCopy(key)
Récupère la valeur associée à la clé spécifiée. Renvoie undefined si la clé n’existe pas.
removeItemCopy(key)
Supprime la valeur associée à la clé spécifiée.
clé
string
L’identifiant unique des données à stocker/récupérer.
value
any
Les données à stocker (pour setItemCopy).
Mis à jour
Ce contenu vous a-t-il été utile ?