文件TargetTarget開發人員指南

Get Offers (Node.js)

最後更新: 2025年5月5日
  • 主題:
  • APIs/SDKs

建立對象:

  • 開發人員

說明

getOffers()用於執行決定並從Adobe Target擷取體驗。

方法

getOffers

TargetClient.getOffers(options: Object): Promise

參數

options物件具有下列結構:

名稱類型必要預設值說明
請求物件是無符合Target 傳送API要求
visitorCookie字串無無ECID (VisitorId) Cookie
targetCookie字串無無Target Cookie
targetLocationHint字串無無Target位置提示
consumerId字串否無Analytics for Target (A4T)拼接的consumerIds
CustomerIds陣列否無VisitorId相容格式的客戶ID
sessionId字串無無用於連結多個Target請求
訪客物件無新VisitorId提供外部VisitorId例項

Promise

Promise傳回的結構如下:

名稱類型說明
請求物件Target Delivery API個要求
回應物件Target Delivery API個回應
visitorState物件應傳遞給訪客API getInstance()的物件
targetCookie物件Target Cookie
targetLocationHintCookie物件Target位置提示Cookie
analyticsDetails陣列使用使用者端Analytics時的Analytics裝載
responseTokens陣列回應Token的清單。
trace陣列所有請求mbox/檢視的彙總追蹤資料
狀態物件包含回應狀態的物件。
決策方法字串決定要使用的決策方法(裝置上、伺服器端、混合式)

用來將資料傳回瀏覽器的targetCookie和targetLocationHintCookie物件具有以下結構:

名稱類型說明
名稱字串Cookie 名稱
value任何Cookie值,則會轉換為字串
maxAge數字maxAge選項可方便您設定相對於目前時間(以秒為單位)的過期時間

用於表示目標回應狀態的status物件具有下列結構:

名稱
類型
說明
狀態
數字
HTTP狀態代碼
訊息
字串
有關回應的訊息。 例如,它可以指出回應是決定裝置上還是伺服器端
remoteMboxes
陣列
當決定方法為on-device時,會提供無法完全決定裝置上的mbox名稱陣列。 換句話說,需要Target Delivery API要求。

範例

Node.js

const TargetClient = require("@adobe/target-nodejs-sdk");
const CONFIG = {
  client: "acmeclient",
  organizationId: "1234567890@AdobeOrg"
};

const targetClient = TargetClient.create(CONFIG);

const request = {
    context: {channel: "web"},
    execute: {
        mboxes: [{
            name: "a1-serverside-ab",
            index: 1
        }]
}};

const response = await targetClient.getOffers({ request });
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3