DIL-methoden op instantieniveau instance-level-dil-methods
Instantieniveau DIL Met API's kunt u programmatisch Audience Managers maken en bewerken. De instantie-vlakke methodes verbeteren API functionaliteit die door de klasse-vlakke methodes wordt gevestigd.
Aan de slag met DIL-methoden op instantieniveau get-started-dil-methods
Wanneer u met de instantie werkt DIL API's:
- De toegang vereist een partnernaam en container namespace identiteitskaart (NSID). Neem contact op met de accountmanager van de Audience Manager voor deze informatie.
- Een voorbeeld vervangen cursief tekst in de API documentatie met waarde, identiteitskaart, of andere variabele zoals vereist door de methode u met werkt.
signalen signals
Voegt klant en platform-vlakke afbeeldingen aan het vraagkoord van een hangende verzoek toe.
Functiehandtekening: signals: function ({key1:value1, key2:value2},prefix){}
- U kunt andere API-aanroepen naar deze methode koppelen.
- Als de Adobe Experience Cloud JavaScript-bibliotheek op de pagina staat,
submit()
wacht tot de cloud een cookie heeft ingesteld voordat een aanvraag wordt verzonden.
Gereserveerde aanvraagsleutels
De volgende aanvraagsleutels zijn gereserveerd en kunnen niet door deze methode worden beschreven:
sids
pdata
logdata
callback
postCallbackFn
useImageRequest
Parameters
obj
prefix
return
Antwoord
Hiermee wordt het API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName'
containerNSID: containerNSID
});
// Method 1
var obj = { key1 : 1, key2 : 2 };
dataLib.api.signals(obj, 'c_').submit();
// Method 2
dataLib.api.signals({c_zdid: 54321}).submit();
// Method 3
// Will send 'c_key=a&c_key=2&c_key=3' to Audience Manager
var obj = { key : ['a', 'b', 'c'] };
dataLib.api.signals(obj, 'c_').submit();
kenmerken traits
Voegt SIDs aan het vraagkoord van een hangend verzoek toe.
Handtekening functie: traits:function (sids){}
Parameters
sids
Antwoord
Hiermee wordt het API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var partnerObject = DIL.create({
partner: 'partner name',
containerNSID: NSID
});
partnerObject.api.traits([123, 456, 789]);
logs logs
Voeg gegevens toe aan logbestanden in de aanvraag die in behandeling is.
Handtekening functie: logs: function {key1:value1, key2:value2}
Antwoord
Hiermee wordt het API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var partnerObject = DIL.create({
partner: 'partner',
containerNSID: NSID
});
partnerObject.api.logs({
file: 'dil.js',
message: 'This is the first request'
});
indienen submit
Hiermee worden alle hangende gegevens naar de Audience Manager verzonden voor de DIL -instantie.
Functiehandtekening: submit: function () {}
%20
en puntkomma's als %3B
.Antwoord
Hiermee wordt het API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
dataLib.api.traits([
123,456, 789]).logs({
file: 'dil.js',
message: 'This is the first request'
}).signals({
c_zdid: 1111
d_dma: 'default'
}).submit();
afterResult afterresult
Een functie die na de standaardbestemmings het publiceren callback uitvoert.
Functiehandtekening: afterResult: function (fn) {}
Parameters
fn
Antwoord
Hiermee wordt een API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
dataLib.api.signals({
c_zdid: 54321
d_dma: 'default'
}).afterResult(function(json){
//Do something with the JSON data returned from the server.
}).submit();
clearData cleardata
Wist alle gegevens in een aanvraag in behandeling.
Functiehandtekening: clearData: function () {}
Antwoord
Hiermee wordt het API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
dataLib.api.traits([123,456, 789]).logs({
file: 'dil.js'
message: 'This is the first request'
}).signals({
c_zdid: 1111
d_dma: 'default'
});
//Reset the pending data
dataLib.clearData();
customQueryParams customqueryparams
Voegt aangepaste vraagparameters toe die niet uitdrukkelijk door de server van de gegevensinzameling aan een hangende verzoek worden bepaald.
Functiehandtekening: customQueryParams: function (obj) {}
Gereserveerde aanvraagsleutels
De volgende aanvraagsleutels zijn gereserveerd en kunnen niet door deze methode worden beschreven:
sids
pdata
logdata
callback
postCallbackFn
useImageRequest
Antwoord
Retourneert het API-object van de huidige DIL-instantie.
Voorbeeldcode
var partnerObject = DIL.create({
partner: 'partner',
containerNSID: NSID
});
partnerObject.api.customQueryParams({
nid: 54231,
ntype: 'default'
});
getContainerNSID getcontainernsid
Keert de waarde van container NSID voor terug DIL -instantie. Nuttig voor foutopsporing en probleemoplossing.
Functiehandtekening: dil.api.getContainerNSID: function () {}
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
//Verify the container NSID
var nsid = dataLib.api.getContainerNSID();
getEventLog geteventlog
Retourneert chronologisch gesorteerde gebeurtenisloggegevens als een array van tekenreeksen. Nuttig voor foutopsporing en probleemoplossing.
Functiehandtekening: dil.api.getEventLog: function () {}
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
dataLib.api.traits([123, 456, 789]).logs({
file: 'dil.js',
message: 'This is the first request'
});.signals({
c_zdid: 1111
d_dma: 'default'
});.submit();
//Check log for messages
var log = dataLib.api.getEventLog();
if (log && log.length) {
alert(log.join('\n'));
}else{
alert('No log messages');
}
getPartner getpartner
Retourneert de partnernaam voor een DIL -instantie. Nuttig voor foutopsporing en probleemoplossing.
Functiehandtekening: dil.api.getPartner: function () {}
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName'
containerNSID: containerNSID
});
//Verify the partner name
var partner = dataLib.api.getPartner();
getState getstate
Retourneert de status van de huidige DIL -instantie. Nuttig voor foutopsporing en probleemoplossing.
Functiehandtekening: dil.api.getState: function () {}
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
dataLib.api.traits([123, 456, 789]).logs({
file: 'dil.js',
message:'This is the first request'
});.signals({
c.zdid: 1111
d_dma: 'default'
});.submit();
var state = dataLib.api.getState();
/*Object outline of state
state = {
pendingRequest: {pending data for call to server},
otherRequestInfo:{
firingQueue: [],
fired: [],
firing: false,
errored: [],
reservedKeys: {
sids: true,
pdata: true,
logdata: true,
callback: true,
postCallbackFn: true,
useImageRequest: true,
},
firstRequestHasFired: false,
num_of_jsonp_responses: 0,
num_of_jsonp_errors: 0,
num_of_img_responses: 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,
sendingMessages: false,
messages: [],
messageSendingInterval: constants.POST_MESSAGE_ENABLED ? 15: 100,
//Recommend 100ms for IE 6 & 7, 15ms for other browsers
jsonProcessed: []
}
}
*/
idSync idsync
Bestaat uit twee functies waarmee gegevenspartners gebruikers-id's tussen elkaar en Audience Manager kunnen uitwisselen en synchroniseren.
Functiehandtekening:
Werken met DIL versies 2.10 en 3.1 of hoger.
dil.Instance.api.idSync(initConfig)
Tussen verschillende gegevenspartners en Audience Manager. Bijvoorbeeld, zou partner x dit gebruiken om een gebruiker - identiteitskaart met partner y te synchroniseren en dan dat naar Audience Manager te verzenden.
Belangrijk: Deze methode is vervangen. Gebruik de idSyncByURL
methode van de instantie Adobe Experience Platform Identity Service.
dil.Instance.api.aamIdSync(initConfig)
Wanneer u de gebruikersnaam al kent en deze naar de Audience Manager wilt verzenden.
Belangrijk: Deze methode is vervangen. Gebruik de idSyncByDataSource
methode van de instantie Adobe Experience Platform Identity Service.
idSync Elements
idSync
kan bestaan uit:
dpid
dpuuid
minutesToLive
url
Macros
idSync
Hiermee worden de volgende macro's geaccepteerd:
%TIMESTAMP%
: Genereert een tijdstempel (in milliseconden). Wordt gebruikt voor het busten van cache.%DID%
: Voegt de Audience Manager-id voor de gebruiker in.%HTTP_PROTO%
: Hiermee wordt het paginaprotocol ingesteld (http
ofhttps
).
Antwoord
Beide functies retourneren Successfully queued
indien succesvol. Ze retourneren een foutbericht als dat niet het geval is.
Voorbeeldcode
dilInstance.api.idSync(initConfig)
// Fires url with macros replaced
dilInstance.api.idSync({
dpid: '23', // must be a string
url: '//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',
minutesToLive: 20160 // optional, defaults to 20160 minutes (14 days)
});
dilInstance.api.aamIdSync(initConfig)
// Fires 'https:/https:' + '//dpm.demdex.net/ibs:dpid=<dpid>&dpuuid=<dpuuid>'
dilInstance.api.aamIdSync({
dpid: '23', // must be a string
dpuuid: '98765', // must be a string
minutesToLive: 20160 // optional, defaults to 20160 minutes (14 days)
});
resultaat result
Voegt een callback (die JSON ontvangt) aan het hangende verzoek toe.
Functiehandtekening: result: function (callback) {}
Deze callback vervangt standaardcallback die bestemmings het publiceren behandelt.
Parameters
callback
Antwoord
Hiermee wordt het API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
dataLib.api.traits([123, 456, 789]).result(function(json){
//Do something, possibly with the JSON data returned from the server.
});.submit();
secureDataCollection securedatacollection
secureDataCollection
is een Booleaanse parameter die bepaalt hoe DIL roept Data Collection Servers (DCS) en Akamai.
-
Wanneer
secureDataCollection= true
(standaard), DIL maakt altijd veilige, HTTPS vraag. -
Wanneer
secureDataCollection= false
, DIL voert HTTP- of HTTPS-aanroepen uit volgens het beveiligingsprotocol dat door de pagina is ingesteld.
secureDataCollection= false
als u bezoekerAPI.js en DIL op dezelfde pagina. Zie het onderstaande codevoorbeeld.
var dilInstance = DIL.create({
...
secureDataCollection: false
});
useCORSOnly usecorsonly
useCORSOnly
is een Booleaanse parameter true/false die bepaalt hoe de browser bronnen van andere domeinen opvraagt.
Overzicht
useCORSOnly
is standaard onwaar. Onwaar betekent browser middelcontroles met CORS of JSONP kan uitvoeren. Maar DIL probeert altijd om middelen met CORS eerst te verzoeken. Het keert aan JSONP op oudere browsers terug die geen CORS steunen. Als u browser moet dwingen om CORS slechts te gebruiken, zoals met plaatsen die hoge veiligheidseisen hebben, plaats useCORSOnly:true
.
Codevoorbeeld
var dilInstance = DIL.create({
...
useCORSOnly: true
});
- We raden u aan
useCORSOnly: true
alleen als u zeker weet dat bezoekers van uw site browsers hebben die deze functie ondersteunen. - Wanneer
useCORSOnly: true
, DIL zal geen vraag van identiteitskaart van Internet Explorer versie 9 of ouder maken.
useImageRequest useimagerequest
Hiermee wijzigt u het aanvraagtype in de afbeelding <img>
van script <src>
.
Functiehandtekening: useImageRequest: function () {}
Antwoord
Hiermee wordt een API-object van het huidige object geretourneerd DIL -instantie.
Voorbeeldcode
var dataLib = DIL.create({
partner:'partnerName',
containerNSID: containerNSID
});
dataLib.api.traits([123, 456, 789]).useImageRequest().submit();