adobe.target.getOffer(options)
Erstellt für:
- Entwickler
Diese Funktion löst eine Anfrage aus, um ein Target Angebot abzurufen.
Verwenden Sie sie mit adobe.target.applyOffer()
, um die Antwort zu verarbeiten, oder verwenden Sie Ihre eigene Methode für die Verarbeitung von „success“. Der Optionsparameter ist obligatorisch und hat die folgende Struktur:
Schlüssel | Typ | Erforderlich | Beschreibung |
---|---|---|---|
mbox | Zeichenfolge | Ja | Name der Mbox |
params | Objekt | Nein |
Mbox-Parameter Ein Objekt aus Schlüssel-Wert-Paaren mit der folgenden Struktur:
|
success | Funktion | Ja |
Rückruf wird ausgeführt, wenn eine Antwort vom Server eingegangen ist. Die Rückruffunktion „success“ erhält einen einzelnen Parameter, der ein Array von Angebotsobjekten enthält. Im Folgenden finden Sie ein Beispiel für einen erfolgreichen Callback:
Details finden Sie unten unter „Antworten“. |
error | Funktion | Ja |
Auszuführender Rückruf bei Eingang eines Fehlers Es gibt einige Fälle, die als fehlerhaft angesehen werden:
Details finden Sie unten unter „Fehlermeldungen“. |
Zeitüberschreitung | Nummer | Nein |
Zeitüberschreitung in Millisekunden Wird kein Wert festgelegt, kommt der Standardwert für die Zeitüberschreitung in at.js zum Einsatz. Die standardmäßige maximale Wartezeit kann über die Target-Benutzeroberfläche unter Administration > Implementation festgelegt werden. |
Beispiele
Hinzufügen von Parametern mit getOffer() und Verwenden von applyOffer() für die erfolgreiche Verarbeitung:
adobe.target.getOffer({
"mbox": "target-global-mbox",
"params": {
"a": 1,
"b": 2
},
"success": function(offer) {
adobe.target.applyOffer( {
"mbox": "target-global-mbox",
"offer": offer
} );
},
"error": function(status, error) {
console.log('Error', status, error);
}
});
Hinzufügen von Parametern und Profilparametern mit getOffer() und Verwenden von applyOffer() für die erfolgreiche Verarbeitung:
adobe.target.getOffer({
"mbox": "target-global-mbox",
"params": {
"a": 1,
"b": 2,
"profile.age": 27,
"profile.gender": "male"
},
"success": function(offer) {
adobe.target.applyOffer( {
"mbox": "target-global-mbox",
"offer": offer
} );
},
"error": function(status, error) {
console.log('Error', status, error);
}
});
Verwenden der benutzerdefinierten Zeitüberschreitung und der benutzerdefinierten Erfolgsbehandlung mit getOffer():
„YOUR_OWN_CUSTOM_HANDLING_FUNCTION“ ist ein Platzhalter für eine Funktion, die der Kunde definieren würde.
adobe.target.getOffer({
"mbox": "target-global-mbox",
"success": function(offer) {
YOUR_OWN_CUSTOM_HANDLING_FUNCTION(offer);
},
"error": function(status, error) {
console.log('Error', status, error);
},
"timeout": 2000
});
Antworten
Der Antwortparameter, der an die Rückruffunktion „success“ weitergegeben wurde, ist eine Reihe von Aktionen. Eine Aktion ist ein Objekt, das für gewöhnlich das folgende Format hat:
Beispiel
{
"sessionId": "1444512212156-384616",
"tntId": "1444512212156-384616.17_35",
"offers": [{
"plugins": ["<script type=\"text/javascript\">\r\n/*mboxHighlight+ (1of2) v1 ==> Response Plugin*/\r\nwindow.ttMETA=(typeof(window.ttMETA)!='undefined')?window.ttMETA:[];window.ttMETA.push({'mbox':'target-global-mbox','campaign':'at: redirect ootb','experience':'Experience B','offer':'/at_redirect_ootb/experiences/1/pages/0/1442082890250'});window.ttMBX=function(x){var mbxList=[];for(i=0;i<ttMETA.length;i++){if(ttMETA[i].mbox==x.getName()){mbxList.push(ttMETA[i])}}return mbxList[x.getId()]}\r\n</script>"],
"actions": {
"content": [{
"passMboxSession": false,
"selector": "body",
"action": "redirect",
"url": "https://example.com/04.html",
"includeAllUrlParameters": true
}]
}
}]
}
Fehlermeldungen
Die an den Rückruf mit Fehler übergebenen Parameter „status“ und „error“ haben das folgende Format:
Stellt den Fehlerstatus dar Dieser Parameter kann die folgenden Werte annehmen:
- timeout: Gibt an, dass die Anfrage abgelaufen ist.
- parseerror: Gibt an, dass die Antwort nicht analysiert werden konnte, zum Beispiel wenn HTML-Code oder Klartext statt JSON gesendet wurde.
- error: Gibt an, dass ein allgemeines Problem aufgetreten ist, etwa wenn wir einen HTTP-Status erhalten, der nicht „200 OK“ lautet.