Show Menu
THEMEN×

DIL-Methoden auf Instanzebene

Mit den DIL APIs auf Instanzebene können Sie Audience Manager-Objekte programmgesteuert erstellen und verwenden. Die Methoden auf Instanzebene verbessern die API-Funktionalität, die durch Methoden auf Klassenebene festgelegt wird.

Erste Schritte mit DIL-Methoden auf Instanzebene

Beim Arbeiten mit DIL APIs auf Instanzebene:
  • Für den Zugriff sind ein Name des Partners und eine Container-Namespace-ID (NSID) erforderlich. Wenden Sie sich an Ihren Audience Manager-Kundenbetreuer, um diese Informationen zu erhalten.
  • Ersetzen Sie den kursiv formatierten Beispieltext in der API-Dokumentation durch Wert, ID oder andere Variable, die von der verwendeten Methode benötigt werden.

signale

Fügt der Abfragezeichenfolge einer ausstehenden Anforderung Zuordnungen auf Kunden- und Plattformebene hinzu.
**** Funktionssignatur: signals: function ({key1:value1, key2:value2},prefix){}
  • Sie können andere API-Aufrufe mit dieser Methode verketten.
  • Wenn sich die Adobe Experience Cloud-JavaScript-Bibliothek auf der Seite befindet, submit() wartet darauf, dass die Cloud ein Cookie setzt, bevor eine Anforderung gesendet wird.
Reservierte Anforderungsschlüssel
Die folgenden Anforderungsschlüssel sind reserviert und können mit dieser Methode nicht überschrieben werden:
  • sids
  • pdata
  • logdata
  • callback
  • postCallbackFn
  • useImageRequest
Parameter
Name
Typ
Beschreibung
obj
Objekt
Ein Objekt, das die Schlüssel-Wert-Paare für Zuordnungen auf Plattformebene darstellt. Parameter akzeptiert Zeichenfolgen und Arrays als Eigenschaftswerte im Objekt.
prefix
Zeichenfolge
Optional. Der Zeichenfolgenwert, der jedem Objektschlüssel als Präfix vorangestellt wird (ersetzt den Originalschlüssel).
return
DIL.api
Gibt das API-Objekt der aktuellen DIL-Instanz zurück.
Antwort
Gibt das API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

' containerNSID: 

containerNSID

 }); 
 
// Methode 1 var obj = { key1 : 1, key2: 2 }; 
dataLib.api.Signals(obj, 'c_').submit(); 
 
// Methode 2 dataLib.api.signals({c_zdid: 54321}).submit(); 
 
// Methode 3 // wird 'c_key=a&c_key=2&c_key=3' an Audience Manager var obj = { key : ['a', 'b', 'c'] }; 
dataLib.api.Signals(obj, 'c_').submit(); 


traits

Fügt der Abfragezeichenfolge einer ausstehenden Anforderung SIDs hinzu.
**** Funktionsunterschrift: traits:function (sids){}
Sie können andere API-Aufrufe mit dieser Methode verketten.
Parameter
Name
Typ
Beschreibung
sids
Array
Eigenschaftensegment-IDs in einem Array.
Antwort
Gibt das API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var partnerObject = DIL.create({ partner: '

Name

des Partners', containerNSID: 

NSID

 }); 
partnerObject.api.traits(

[123, 456, 789]

); 


logs

Fügen Sie Daten zu Protokolldateien in der ausstehenden Anforderung hinzu.
**** Funktionsunterschrift: logs: function {key1:value1, key2:value2}
Antwort
Gibt das API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var partnerObject = DIL.create({ partner: '

partner

', containerNSID: 

NSID

 }); 
partnerObject.api.logs({ file: "dil.js", Meldung: 'Dies ist die erste Anforderung' });


submit

Sendet alle ausstehenden Daten an Audience Manager für die DIL Instanz.
**** Funktionssignatur: submit: function () {}
Sie können andere API-Aufrufe mit dieser Methode verketten. Schreibt auch kodierte Daten in ein Ziel-Cookie. DIL Leerzeichen werden beispielsweise als %20 und Semikolons als %3B kodiert.
Antwort
Gibt das API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

', containerNSID: 

containerNSID

 }); 
 
dataLib.api.traits([

123,456, 789

]).logs({ file: "dil.js", Meldung: 'Dies ist die erste Anforderung' }).signals({ c_zdid: 

111

 d_dma: '

default

' }).submit();


afterResult

Eine Funktion, die nach dem Rückruf beim Veröffentlichen des Standardziels ausgeführt wird.
**** Funktionssignatur: afterResult: function (fn) {}
Sie können andere API-Aufrufe mit dieser Methode verketten.
Parameter
Name
Typ
Beschreibung
fn
Funktion
Die Funktion, die nach der Verarbeitung von JSON ausgeführt werden soll, wird durch den standardmäßigen Rückruf verarbeitet, der die Zielveröffentlichung verarbeitet.
Antwort
Gibt ein API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

', containerNSID: 

containerNSID

 }); 
 
dataLib.api.signals({ c_zdid: 

54321

 d_dma: '

default

' }).afterResult(function(json){ //Tun Sie etwas mit den JSON-Daten, die vom Server zurückgegeben werden. 
}).submit();


clearData

Löscht alle Daten in einer ausstehenden Anforderung.
**** Funktionssignatur: clearData: function () {}
Sie können andere API-Aufrufe mit dieser Methode verketten.
Antwort
Gibt das API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

', containerNSID: 

containerNSID

 }); 
 
dataLib.api.traits([

123,456, 789

]).logs({ file: Meldung "dil.js": 'Dies ist die erste Anforderung' }).signals({ c_zdid: 

111

 d_dma: '

default

' }); 
 
//Zurücksetzen der ausstehenden dataLib.clearData();


customQueryParams

Fügt benutzerdefinierte Abfrageparameter hinzu, die nicht explizit vom Datenerfassungsserver zu einer ausstehenden Anforderung definiert wurden.
**** Funktionssignatur: customQueryParams: function (obj) {}
Sie können andere API-Aufrufe mit dieser Methode verketten.
Reservierte Anforderungsschlüssel
Die folgenden Anforderungsschlüssel sind reserviert und können mit dieser Methode nicht überschrieben werden:
  • sids
  • pdata
  • logdata
  • callback
  • postCallbackFn
  • useImageRequest
Antwort
Gibt das API-Objekt der aktuellen DIL-Instanz zurück.
Beispielcode
var partnerObject = DIL.create({ partner: '

partner

', containerNSID: 

NSID

 }); 
partnerObject.api.customQueryParams({ nid: 54231, Typ: 'default' }); 


getContainerNSID

Gibt den Wert der Container-NSID für die DIL Instanz zurück. Nützlich für Debugging und Fehlerbehebung.
**** Funktionssignatur: dil.api.getContainerNSID: function () {}
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

', containerNSID: 

containerNSID

 }); 
 
//Container NSID var nsid = dataLib.api.getContainerNSID() überprüfen;


getEventLog

Gibt chronologisch sortierte Ereignisprotokolldaten als Zeichenfolgen-Array zurück. Nützlich für Debugging und Fehlerbehebung.
**** Funktionssignatur: dil.api.getEventLog: function () {}
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

', containerNSID: 

containerNSID

 }); 
 
dataLib.api.traits([

123, 456, 789

]).logs({ file: "dil.js", Meldung: 'Dies ist die erste Anforderung' });.signals({ c_zdid: 

111

 d_dma: '

default

' });.submit(); 
 
//Protokoll für Meldungen überprüfen var log = dataLib.api.getEventLog(); 
if (log && log.length) { alert(log.join('\n')); 
else{ alert('Keine Protokollmeldungen'); 
}

getPartner

Gibt den Partnernamen für eine DIL Instanz zurück. Nützlich für Debugging und Fehlerbehebung.
**** Funktionssignatur: dil.api.getPartner: function () {}
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

' containerNSID: 

containerNSID

 }); 
 
//Überprüfen Sie den Partnernamen var partner = dataLib.api.getPartner();


getState

Gibt den Status der aktuellen DIL Instanz zurück. Nützlich für Debugging und Fehlerbehebung.
**** Funktionssignatur: dil.api.getState: function () {}
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

', containerNSID: 

containerNSID

 }); 
 
dataLib.api.traits([

123, 456, 789

]).logs({ file: 'dil.js', message:'Dies ist die erste Anforderung' });.signals({ c.zdid: 

111

 d_dma: '

default

' });.submit(); 
 
var state = dataLib.api.getState(); 
 
/*Objektbeschreibung des Status = { pendingRequest: {

ausstehende Daten für den Aufruf an den Server

}, otherRequestInfo:{ fireQueue: [], ausgelöst: [], ausgelöst: false, Fehler: [], reservedKeys: { sids: true, pdata: true, logdata: true, callback: true, postCallbackFn: true, useImageRequest: true, }, firstRequestHasFired: false, num_of_jsonp_response: 0, num_of_jsonp_errors: 0, num_of_img_response: 0, num_of_img_errors: 0 }, destinationPublishingInfo: { THROTTLE_START: 3000, throttleTimerSet: false, id: ''destination_publishing_iframe_' + partner + '_' + containerNSID, url: (constants.isHTTPS ? https://' : "https://fast.') + partner + '.demdex.net/dest3.html?d_nsid=' + containerNSID + '#' + encodeURIComponent(document.location.href), iframe: null, iframeHasLoaded: false, sendMessages: false, Meldungen: [], messageSendingInterval: constants.POST_MESSAGE_ENABLED ? 15: 100, //100 ms für IE 6 und 7 empfehlen, 15 ms für andere Browser jsonVerarbeitete: [] } } */

idSync

Besteht aus zwei Funktionen, mit denen Datenpartner Benutzer-IDs untereinander und mit Audience Manager austauschen und synchronisieren können.
Funktionssignatur:
Funktioniert mit DIL Versionen 2.10 und 3.1 oder höher.
Code Synchronisiert Benutzer-IDs
dil.Instance.api.idSync(initConfig)
Zwischen verschiedenen Datenpartnern und Audience Manager. Partner x würde dies beispielsweise verwenden, um eine Benutzer-ID mit Partner y zu synchronisieren und diese dann an Audience Manager zu senden.
Wichtig: Diese Methode ist veraltet. Bitte verwenden Sie die idSyncByURL- Methode der Experience Cloud ID-Dienstinstanz.
dil.Instance.api.aamIdSync(initConfig)
Wenn Sie die Benutzer-ID bereits kennen und sie an Audience Manager senden möchten.
Wichtig: Diese Methode ist veraltet. Bitte verwenden Sie die idSyncByDataSource- Methode der Experience Cloud ID-Dienstinstanz.
idSync-Elemente
idSync kann Folgendes umfassen:
Name Typ Beschreibung
dpid Zeichenfolge
Durch Audience Manager zugewiesene Datenanbieter-ID.
dpuuid Zeichenfolge
Die eindeutige Datenanbieter-ID für den Benutzer.
minutesToLive Nummer
(Optional) Legt die Cookie-Ablaufzeit fest. Hierbei muss es sich um eine Ganzzahl handeln. Der Standardwert lautet 20.160 Minuten (14 Tage).
url Zeichenfolge
Ziel-URL.
Makros
idSync akzeptiert die folgenden Makros:
  • %TIMESTAMP% : Generiert einen Zeitstempel (in Millisekunden). Wird für das Cache-Busting verwendet.
  • %DID% : Fügt die Audience Manager-ID für den Benutzer ein.
  • %HTTP_PROTO% : Legt das Seitenprotokoll fest ( http oder https ).
Antwort
Beide Funktionen werden Successfully queued bei erfolgreichem Abschluss zurückgegeben. Falls nicht, wird eine Fehlermeldungszeichenfolge zurückgegeben.
Beispielcode
dilInstance.api.idSync(initConfig)
// URL mit Makros ersetzen dilInstance.api.idSync({ dpid: '23', // muss eine String-URL sein: '//su.addthis.com/red/usync?pid=16&puid=%DID%&url=%HTTP_PROTO%%3A%2F%2Fdpm.demdex.net %2Fibs%3Adpid%3D420%26dpuuid%3D%7B%7Buid%7D%7D', Minuten Live: 20160 // optional, standardmäßig 20160 Minuten (14 Tage) });


dilInstance.api.aamIdSync(initConfig)
// Fehlerbehebungen 'https:/https:' + '//dpm.demdex.net/ibs:dpid=<dpid>&dpuuid=<dpuuid>' dilInstance.api.aamIdSync({ dpid: '23', // muss eine Zeichenfolge sein: '98765', // muss eine Zeichenfolge minToLive sein: 20160 // optional, standardmäßig 20160 Minuten (14 Tage) });


result

Fügt der ausstehenden Anforderung einen Rückruf (der JSON erhält) hinzu.
**** Funktionssignatur: result: function (callback) {}
Dieser Rückruf ersetzt den Standard-Rückruf, der die Zielveröffentlichung behandelt.
Sie können andere API-Aufrufe mit dieser Methode verketten.
Parameter
Name
Typ
Beschreibung
callback
Funktion
JavaScript-Funktion, die vom JSONP-Rückruf ausgeführt wird.
Antwort
Gibt das API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var dataLib = DIL.create({ partner: '

partnerName

', containerNSID: 

containerNSID

 }); 
 
dataLib.api.traits([

123, 456, 789

]).result(function(json){ //Tun Sie etwas, möglicherweise mit den JSON-Daten, die vom Server zurückgegeben werden. 
});.submit();


secureDataCollection

secureDataCollection ist ein boolescher Parameter, der steuert, wie DIL Aufrufe an die Data Collection Servers (DCS) und Akamai gesendet werden.
  • Wenn secureDataCollection= true (Standard), erfolgt DIL immer ein sicherer HTTPS-Aufruf.
  • Wenn secureDataCollection= false erfolgt DIL entweder HTTP- oder HTTPS-Aufrufe gemäß dem von der Seite festgelegten Sicherheitsprotokoll.
Wird eingestellt, secureDataCollection= false wenn Sie visitorAPI.js und DIL auf derselben Seite verwenden. Siehe Codebeispiel unten.
var dilInstance = DIL.create({ ... 
     secureDataCollection: false });


useCORSOnly

useCORSOnly ist ein boolescher true/false-Parameter, der steuert, wie der Browser Ressourcen von anderen Domänen anfordert.
Übersicht
useCORSOnly ist standardmäßig false. False bedeutet, dass der Browser Ressourcenprüfungen mit CORS oder JSONP durchführen kann. Es wird jedoch DIL immer versucht, zunächst Ressourcen mit CORS anzufordern. Bei älteren Browsern, die CORS nicht unterstützen, wird auf JSONP zurückgegriffen. Wenn Sie den Browser zwingen müssen, nur CORS zu verwenden, z. B. bei Sites mit hohen Sicherheitsanforderungen, setzen Sie useCORSOnly:true .
Codebeispiel
var dilInstance = DIL.create({ ... 
     useCORSOnly: true });


  • Es wird empfohlen, diese Einstellung useCORSOnly: true nur dann vorzunehmen, wenn Sie sicher sind, dass Ihre Site-Besucher Browser haben, die diese Funktion unterstützen.
  • Ab useCORSOnly: true diesem Zeitpunkt DIL werden keine ID-Aufrufe von Internet Explorer Version 9 oder älter durchgeführt.

useImageRequest

Ändert den Anforderungstyp in Bild <img> aus Skript <src> .
**** Funktionssignatur: useImageRequest: function () {}
Sie können andere API-Aufrufe mit dieser Methode verketten.
Antwort
Gibt ein API-Objekt der aktuellen DIL Instanz zurück.
Beispielcode
var dataLib = DIL.create({ partner:'

partnerName

', containerNSID: 

containerNSID

 }); 
 
dataLib.api.traits([

123, 456, 789

]).useImageRequest().submit();