인스턴스 수준 DIL API를 사용하면 프로그래밍 방식으로 Audience Manager 개체를 만들고 작업할 수 있습니다. 인스턴스 수준 메서드는 클래스 수준 메서드에서 설정한 API 기능을 향상시킵니다.
인스턴스 수준 작업 시 DIL API:
고객 및 플랫폼 수준 매핑을 보류 중인 요청의 쿼리 문자열에 추가합니다.
함수 서명: signals: function ({key1:value1, key2:value2},prefix){}
submit()
는 클라우드가 요청을 보내기 전에 쿠키를 설정할 때까지 기다립니다.예약된 요청 키
다음 요청 키는 예약되어 있으며 이 메서드로 덮어쓸 수 없습니다.
sids
pdata
logdata
callback
postCallbackFn
useImageRequest
매개 변수
이름 | 유형 | 설명 |
---|---|---|
obj |
개체 | 플랫폼 수준 매핑의 키-값 쌍을 나타내는 개체입니다. 매개 변수는 문자열 및 배열을 개체의 속성 값으로 허용합니다. |
prefix |
문자열 | 선택 사항입니다. 각 개체 키 접두사가 있는 문자열 값(원래 키를 대체). |
return |
DIL.api | 현재 DIL 인스턴스의 API 개체를 반환합니다. |
응답
현재 의 API 개체 반환 DIL 인스턴스.
샘플 코드
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();
보류 중인 요청의 쿼리 문자열에 SID를 추가합니다.
함수 서명: traits:function (sids){}
이 메서드에 다른 API 호출을 연결할 수 있습니다.
매개 변수
이름 | 유형 | 설명 |
---|---|---|
sids |
배열 | 배열의 트레이트 세그먼트 ID. |
응답
현재 의 API 개체 반환 DIL 인스턴스.
샘플 코드
var partnerObject = DIL.create({
partner: 'partner name',
containerNSID: NSID
});
partnerObject.api.traits([123, 456, 789]);
보류 중인 요청의 로그 파일에 데이터를 추가합니다.
함수 서명: logs: function {key1:value1, key2:value2}
응답
현재 의 API 개체 반환 DIL 인스턴스.
샘플 코드
var partnerObject = DIL.create({
partner: 'partner',
containerNSID: NSID
});
partnerObject.api.logs({
file: 'dil.js',
message: 'This is the first request'
});
보류 중인 모든 데이터를 다음에 대한 Audience Manager으로 제출 DIL 인스턴스.
함수 서명: submit: function () {}
이 메서드에 다른 API 호출을 연결할 수 있습니다. 또한, DIL 인코딩된 데이터를 대상 쿠키에 씁니다. 예를 들어 공백은 로 인코딩됩니다. %20
및 세미콜론으로 %3B
.
응답
현재 의 API 개체 반환 DIL 인스턴스.
샘플 코드
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: function (fn) {}
이 메서드에 다른 API 호출을 연결할 수 있습니다.
매개 변수
이름 | 유형 | 설명 |
---|---|---|
fn |
함수로 플러그인 호출 | JSON 후에 실행할 함수는 대상 게시를 처리하는 기본 콜백에 의해 처리됩니다. |
응답
현재 항목의 API 개체 반환 DIL 인스턴스.
샘플 코드
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: function () {}
이 메서드에 다른 API 호출을 연결할 수 있습니다.
응답
현재 의 API 개체 반환 DIL 인스턴스.
샘플 코드
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: function (obj) {}
이 메서드에 다른 API 호출을 연결할 수 있습니다.
예약된 요청 키
다음 요청 키는 예약되어 있으며 이 메서드로 덮어쓸 수 없습니다.
sids
pdata
logdata
callback
postCallbackFn
useImageRequest
응답
현재 DIL 인스턴스의 API 개체를 반환합니다.
샘플 코드
var partnerObject = DIL.create({
partner: 'partner',
containerNSID: NSID
});
partnerObject.api.customQueryParams({
nid: 54231,
ntype: 'default'
});
다음에 대한 컨테이너 NSID 값 반환: DIL 인스턴스. 디버깅 및 문제 해결에 유용합니다.
함수 서명: dil.api.getContainerNSID: function () {}
샘플 코드
var dataLib = DIL.create({
partner: 'partnerName',
containerNSID: containerNSID
});
//Verify the container NSID
var nsid = dataLib.api.getContainerNSID();
연대순으로 정렬된 이벤트 로그 데이터를 문자열 배열로 반환합니다. 디버깅 및 문제 해결에 유용합니다.
함수 서명: dil.api.getEventLog: function () {}
샘플 코드
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');
}
에 대한 파트너 이름을 반환합니다. DIL 인스턴스. 디버깅 및 문제 해결에 유용합니다.
함수 서명: dil.api.getPartner: function () {}
샘플 코드
var dataLib = DIL.create({
partner: 'partnerName'
containerNSID: containerNSID
});
//Verify the partner name
var partner = dataLib.api.getPartner();
현재 상태를 반환합니다. DIL 인스턴스. 디버깅 및 문제 해결에 유용합니다.
함수 서명: dil.api.getState: function () {}
샘플 코드
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: []
}
}
*/
데이터 파트너가 사용자와 Audience Manager 간에 사용자 ID를 교환하고 동기화할 수 있는 두 가지 기능으로 구성됩니다.
함수 서명:
와 함께 작동 DIL 버전 2.10 및 3.1 이상.
코드 | 사용자 ID 동기화 |
---|---|
dil.Instance.api.idSync(initConfig) |
다양한 데이터 파트너와 Audience Manager 간 예를 들어 파트너 x는 이 기능을 사용하여 Audience Manager ID를 파트너 y와 동기화한 다음 사용자에게 보냅니다.
중요 사항: 이 메서드는 더 이상 사용되지 않습니다. 다음을 사용하십시오. |
dil.Instance.api.aamIdSync(initConfig) |
Audience Manager ID를 이미 알고 있고 사용자에게 보내고자 하는 경우.
중요 사항: 이 메서드는 더 이상 사용되지 않습니다. 다음을 사용하십시오. |
idSync 요소
idSync
는 다음과 같이 구성할 수 있습니다.
이름 | 유형 | 설명 |
---|---|---|
dpid |
문자열 | Audience Manager가 할당한 데이터 제공업체 ID입니다. |
dpuuid |
문자열 | 사용자에 대한 데이터 제공업체의 고유한 ID입니다. |
minutesToLive |
숫자 | (선택 사항) 쿠키 만료 시간을 설정하며 정수여야 합니다. 기본값은 20160분(14일)입니다. |
url |
문자열 | 대상 URL. |
매크로
idSync
은 다음 매크로를 허용합니다.
%TIMESTAMP%
: 타임스탬프를 생성합니다(밀리초 단위). 캐시 무효화에 사용됩니다.%DID%
: 사용자의 Audience Manager ID를 삽입합니다.%HTTP_PROTO%
: 페이지 프로토콜( http
또는 https
).응답
두 함수 모두 반환 Successfully queued
성공하면 실패한 경우 오류 메시지 문자열을 반환합니다.
샘플 코드
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)
});
JSON을 수신하는 콜백을 보류 중인 요청에 추가합니다.
함수 서명: result: function (callback) {}
이 콜백은 대상 게시를 처리하는 기본 콜백을 대체합니다.
이 메서드에 다른 API 호출을 연결할 수 있습니다.
매개 변수
이름 | 유형 | 설명 |
---|---|---|
callback |
함수로 플러그인 호출 | JSONP 콜백에서 실행되는 JavaScript 함수입니다. |
응답
현재 의 API 개체 반환 DIL 인스턴스.
샘플 코드
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
는 방법을 제어하는 부울 매개 변수입니다 DIL 을(를) 호출합니다. Data Collection Servers (DCS) 그리고 Akamai.
날짜 secureDataCollection= true
(기본값), DIL 은 항상 보안 HTTPS 호출을 수행합니다.
날짜 secureDataCollection= false
, DIL 페이지에서 설정한 보안 프로토콜을 따라 HTTP 또는 HTTPS를 호출합니다.
설정 secureDataCollection= false
visitorAPI.js 및 DIL 같은 페이지에서. 아래 코드 샘플을 참조하십시오.
var dilInstance = DIL.create({
...
secureDataCollection: false
});
useCORSOnly
는 브라우저가 다른 도메인에서 리소스를 요청하는 방법을 제어하는 부울 true/false 매개 변수입니다.
개요
useCORSOnly
는 기본적으로 false입니다. False는 브라우저가 CORS 또는 JSONP로 리소스 확인을 수행할 수 있음을 의미합니다. 그러나 DIL 는 항상 먼저 CORS를 사용하여 리소스를 요청하려고 합니다. ID 서비스는 CORS를 지원하지 않는 오래된 브라우저에서는 JSONP로 되돌립니다. 보안 요구 사항이 높은 사이트와 같이 브라우저에서 CORS만 사용해야 하는 경우 을 설정합니다. useCORSOnly:true
.
코드 샘플
var dilInstance = DIL.create({
...
useCORSOnly: true
});
useCORSOnly: true
사이트 방문자에게 이 기능을 지원하는 브라우저가 있다고 확신할 때만 해당합니다.useCORSOnly: true
, DIL 은 Internet Explorer 버전 9 이상에서 ID를 호출하지 않습니다.요청 유형을 이미지로 변경합니다. <img>
스크립트에서 <src>
.
함수 서명: useImageRequest: function () {}
이 메서드에 다른 API 호출을 연결할 수 있습니다.
응답
현재 항목의 API 개체 반환 DIL 인스턴스.
샘플 코드
var dataLib = DIL.create({
partner:'partnerName',
containerNSID: containerNSID
});
dataLib.api.traits([123, 456, 789]).useImageRequest().submit();