以Destination SDK建立的目的地的伺服器規格
目的地伺服器規格會定義從Adobe Experience Platform接收資料的目的地平台型別,以及Platform與目的地之間的通訊引數。 例如:
若要瞭解此元件在何處適合使用Destination SDK建立的整合,請參閱組態選項檔案中的圖表,或檢視下列目的地組態概觀頁面:
您可以透過/authoring/destination-servers
端點設定目的地伺服器規格。 請參閱下列API參考頁面,以取得詳細的API呼叫範例,您可在此範例設定本頁面中顯示的元件。
此頁面顯示Destination SDK支援的所有目的地伺服器型別及其所有組態引數。 建立目的地時,請以您自己的值取代引數值。
支援的整合型別 supported-integration-types
如需瞭解哪些型別的整合支援本頁面所述功能的詳細資訊,請參閱下表。
當建立或更新目的地伺服器時,請使用本頁所述的其中一個伺服器型別設定。 根據您的整合需求,請務必將這些範例中的範例引數值取代為您自己的值。
硬式編碼欄位與範本化欄位 templatized-fields
透過Destination SDK建立目的地伺服器時,您可以藉由將組態引數硬式編碼到組態中,或使用範本化欄位來定義組態引數值。 範本化欄位可讓您從Platform UI讀取使用者提供的值。
目的地伺服器引數有兩個可設定的欄位。 這些選項指定您是使用硬式編碼值或範本化值。
templatingStrategy
必要。 定義是否透過value
欄位提供硬式編碼值,或UI中的使用者可設定值。 支援的值:
NONE
:當您透過value
引數硬式編碼引數值時(請參閱下一列),請使用此值。 範例:"value": "my-storage-bucket"
。PEBBLE_V1
:當您希望使用者在UI中提供引數值時,請使用此值。 範例:"value": "{{customerData.bucket}}"
。
value
必要。 定義引數值。 支援的值型別:
- 硬式編碼值:當您不需要使用者在UI中輸入引數值時,請使用硬式編碼值(例如
"value": "my-storage-bucket"
)。 以硬式編碼方式編碼值時,templatingStrategy
應一律設為NONE
。 - 範本化值:當您希望使用者在UI中提供引數值時,請使用範本化值(例如
"value": "{{customerData.bucket}}"
)。 使用範本化值時,templatingStrategy
應一律設為PEBBLE_V1
。
何時使用硬式編碼欄位或範本化欄位
根據您建立的整合型別,硬式編碼和範本化欄位在Destination SDK中都有各自的用途。
不使用使用者輸入連線到您的目的地
當使用者在Platform UI中連線到您的目的地時,您可能想要處理目的地連線程式,而不需要他們的輸入。
若要這麼做,您可以在伺服器規格中硬式編碼目的地平台連線引數。 當您在目標伺服器設定中使用硬式編碼引數值時,Adobe Experience Platform與您的目標平台之間的連線無需使用者輸入即可處理。
在下列範例中,合作夥伴會建立資料登陸區域目的地伺服器,且將path.value
欄位以硬式編碼撰寫。
{
"name":"Data Landing Zone destination server",
"destinationServerType":"FILE_BASED_DLZ",
"fileBasedDlzDestination":{
"path":{
"templatingStrategy":"NONE",
"value":"Your/hardcoded/path/here"
},
"useCase": "Your use case"
}
}
因此,當使用者進行目的地連線教學課程時,他們不會看到驗證步驟。 而是由Platform處理驗證,如下圖所示。
使用使用者輸入連線到您的目的地
當Platform和您的目的地之間的連線應該根據平台UI中的特定使用者輸入建立(例如選取API端點或提供欄位值)時,您可以使用伺服器規格中的範本化欄位來讀取使用者輸入並連線到您的目的地平台。
在以下範例中,合作夥伴會建立即時(串流)整合,且url.value
欄位會使用範本化引數{{customerData.region}}
,根據使用者輸入來個人化API端點的一部分。
{
"name":"Templatized API endpoint example",
"destinationServerType":"URL_BASED",
"urlBasedDestination":{
"url":{
"templatingStrategy":"PEBBLE_V1",
"value":"https://api.yourcompany.com/data/{{customerData.region}}/items"
}
}
}
若要讓使用者可以選擇從Platform UI選取值,則必須在目的地組態中將region
引數定義為客戶資料欄位,如下所示:
"customerDataFields":[
{
"name":"region",
"title":"Region",
"description":"Select an option",
"type":"string",
"isRequired":true,
"readOnly":false,
"enum":[
"US",
"EU"
]
}
因此,當使用者進行目的地連線教學課程時,必須先選取地區,才能連線至目的地平台。 當他們連線到目的地時,範本化的欄位{{customerData.region}}
會取代為使用者在UI中選取的值,如下圖所示。
即時(串流)目的地伺服器 streaming-example
此目的地伺服器型別可讓您透過HTTP請求,將資料從Adobe Experience Platform匯出至您的目的地。 伺服器設定包含接收訊息之伺服器(您這端的伺服器)的相關資訊。
此程式會以一系列HTTP訊息的形式將使用者資料傳送至您的目的地平台。 以下引數構成HTTP伺服器規格範本。
以下範例顯示即時(串流)目的地的目的地伺服器設定範例。
{
"name":"Your destination server name",
"destinationServerType":"URL_BASED",
"urlBasedDestination":{
"url":{
"templatingStrategy":"PEBBLE_V1",
"value":"{YOUR_API_ENDPOINT}"
}
}
}
name
Moviestar destination server
。destinationServerType
URL_BASED
。templatingStrategy
必要。
- 如果您在
value
欄位中使用範本化欄位,而非硬式編碼值,請使用PEBBLE_V1
。 如果您有類似https://api.moviestar.com/data/{{customerData.region}}/items
的端點,且使用者必須從Platform UI選取端點區域,請使用此選項。 - 如果Adobe端不需要範本化轉換,例如,如果您有類似
https://api.moviestar.com/data/items
的端點,請使用NONE
value
Amazon S3目的地伺服器 s3-example
此目的地伺服器可讓您將包含Adobe Experience Platform資料的檔案匯出至Amazon S3儲存空間。
以下範例顯示Amazon S3目的地的目的地伺服器設定範例。
{
"name":"Amazon S3 destination",
"destinationServerType":"FILE_BASED_S3",
"fileBasedS3Destination":{
"bucket":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.bucket}}"
},
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
}
}
}
name
destinationServerType
FILE_BASED_S3
。fileBasedS3Destination.bucket.templatingStrategy
必要。 根據bucket.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience PlatformUI中輸入自己的貯體名稱,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼貯體名稱進行整合,例如
"bucket.value":"MyBucket"
,則將此值設定為NONE
。
fileBasedS3Destination.bucket.value
"value":"MyBucket"
)。fileBasedS3Destination.path.templatingStrategy
必要。 根據path.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience PlatformUI中輸入自己的路徑,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將path.value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼路徑進行整合,例如
"bucket.value":"/path/to/MyBucket"
,則將此值設定為NONE
。
fileBasedS3Destination.path.value
"value":"/path/to/MyBucket"
)。SFTP目的地伺服器 sftp-example
此目的地伺服器可讓您將包含Adobe Experience Platform資料的檔案匯出至您的SFTP儲存伺服器。
以下範例顯示SFTP目的地的目的地伺服器設定範例。
{
"name":"File-based SFTP destination server",
"destinationServerType":"FILE_BASED_SFTP",
"fileBasedSFTPDestination":{
"rootDirectory":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.rootDirectory}}"
},
"hostName":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.hostName}}"
},
"port":22,
"encryptionMode":"PGP"
}
}
name
destinationServerType
FILE_BASED_SFTP
。fileBasedSFTPDestination.rootDirectory.templatingStrategy
必要。 根據rootDirectory.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience PlatformUI中輸入自己的根目錄路徑,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將rootDirectory.value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取使用者提供的值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼的根目錄路徑進行整合,例如
"rootDirectory.value":"Storage/MyDirectory"
,則將此值設定為NONE
。
fileBasedSFTPDestination.rootDirectory.value
"value":"Storage/MyDirectory"
fileBasedSFTPDestination.hostName.templatingStrategy
必要。 根據hostName.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience PlatformUI中輸入自己的主機名稱,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將hostName.value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取使用者提供的值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼主機名稱進行整合,例如
"hostName.value":"my.hostname.com"
,則將此值設定為NONE
。
fileBasedSFTPDestination.hostName.value
"hostName.value":"my.hostname.com"
)。port
encryptionMode
指示是否使用檔案加密。 支援的值:
- PGP
- None
Azure Data Lake Storage (ADLS)目的地伺服器 adls-example
此目的地伺服器可讓您將包含Adobe Experience Platform資料的檔案匯出至您的Azure Data Lake Storage帳戶。
下列範例顯示Azure Data Lake Storage目的地的目的地伺服器組態範例。
{
"name":"ADLS destination server",
"destinationServerType":"FILE_BASED_ADLS_GEN2",
"fileBasedAdlsGen2Destination":{
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
}
}
}
name
destinationServerType
FILE_BASED_ADLS_GEN2
。fileBasedAdlsGen2Destination.path.templatingStrategy
必要。 根據path.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience Platform使用者介面中輸入其ADLS資料夾路徑,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將path.value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼路徑進行整合,例如
"abfs://<file_system>@<account_name>.dfs.core.windows.net/<path>/"
,則將此值設定為NONE
。
fileBasedAdlsGen2Destination.path.value
abfs://<file_system>@<account_name>.dfs.core.windows.net/<path>/
)。Azure Blob Storage目的地伺服器 blob-example
此目的地伺服器可讓您將包含Adobe Experience Platform資料的檔案匯出至Azure Blob Storage容器。
下列範例顯示Azure Blob Storage目的地的目的地伺服器組態範例。
{
"name":"Blob destination server",
"destinationServerType":"FILE_BASED_AZURE_BLOB",
"fileBasedAzureBlobDestination":{
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
},
"container":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.container}}"
}
}
}
name
destinationServerType
FILE_BASED_AZURE_BLOB
。fileBasedAzureBlobDestination.path.templatingStrategy
fileBasedAzureBlobDestination.path.value
https://myaccount.blob.core.windows.net/
)。fileBasedAzureBlobDestination.container.templatingStrategy
fileBasedAzureBlobDestination.container.value
myContainer
)。Data Landing Zone (DLZ)目的地伺服器 dlz-example
此目的地伺服器可讓您將包含Platform資料的檔案匯出至Data Landing Zone儲存空間。
下列範例顯示Data Landing Zone (DLZ)目的地的目的地伺服器組態範例。
{
"name":"Data Landing Zone destination server",
"destinationServerType":"FILE_BASED_DLZ",
"fileBasedDlzDestination":{
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
},
"useCase": "Your use case"
}
}
name
destinationServerType
FILE_BASED_DLZ
。fileBasedDlzDestination.path.templatingStrategy
必要。 根據path.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience Platform使用者介面中輸入自己的Data Landing Zone帳戶,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將path.value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼路徑進行整合,例如
"path.value": "https://myaccount.blob.core.windows.net/"
,則將此值設定為NONE
。
fileBasedDlzDestination.path.value
Google Cloud Storage目的地伺服器 gcs-example
此目的地伺服器可讓您將包含Platform資料的檔案匯出到您的Google Cloud Storage帳戶。
下列範例顯示Google Cloud Storage目的地的目的地伺服器組態範例。
{
"name":"Google Cloud Storage Server",
"destinationServerType":"FILE_BASED_GOOGLE_CLOUD",
"fileBasedGoogleCloudStorageDestination":{
"bucket":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.bucket}}"
},
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
}
}
}
name
destinationServerType
FILE_BASED_GOOGLE_CLOUD
。fileBasedGoogleCloudStorageDestination.bucket.templatingStrategy
必要。 根據bucket.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience PlatformUI中輸入自己的Google Cloud Storage貯體名稱,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將bucket.value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼貯體名稱進行整合,例如
"bucket.value": "my-bucket"
,則將此值設定為NONE
。
fileBasedGoogleCloudStorageDestination.bucket.value
"value": "my-bucket"
)。fileBasedGoogleCloudStorageDestination.path.templatingStrategy
必要。 根據path.value
欄位中使用的值型別設定此值。
- 如果您希望使用者在Experience PlatformUI中輸入自己的Google Cloud Storage貯體路徑,請將此值設定為
PEBBLE_V1
。 在此情況下,您必須將path.value
欄位範本化,才能從使用者填入的客戶資料欄位中讀取值。 此使用案例如上述範例所示。 - 如果您使用硬式編碼路徑進行整合,例如
"path.value": "/path/to/my-bucket"
,則將此值設定為NONE
。
fileBasedGoogleCloudStorageDestination.path.value
"value": "/path/to/my-bucket"
)。後續步驟 next-steps
閱讀本文後,您應該更加瞭解什麼是目的地伺服器規格,以及如何進行設定。
若要深入瞭解其他目的地伺服器元件,請參閱下列文章: