使用nodejs實現OData的batch操作在Marketing Cloud裡讀取contact資訊
我們先來看看Marketing Cloud系統裡的contact資訊:
一共1218374條資料。
我們用如下的nodejs程式碼通過OData來獲取這些資料:
var request = require('request');var config = require("./mcConfig");var url = config.getContactBatchURL;var sBody = "--batch_c914-a60c-1877" + "\n" + "Content-Type: application/http" + "\n" + "Content-Transfer-Encoding: binary" + "\n" + "\n" + "GET InteractionContacts?sap-client=100&$skip=0&$top=2&$select=ImageURL%2cName%2cContactLevelName%2cCountryName%2cCity%2cEMailAddress%2cPhoneNumber%2cMobilePhoneNumber%2cCorporateAccountName%2cInteractionContactUUID%2cRelationship%2cType&$inlinecount=allpages HTTP/1.1" + "sap-cancel-on-close: true" + "\n" + "Cache-Control: max-age=360" + "\n" + "sap-contextid-accept: header" + "\n" + "Accept: application/json" + "\n" + "Accept-Language: en" + "\n" + "DataServiceVersion: 2.0" + "\n" + "MaxDataServiceVersion: 2.0" + "\n" + "\n" + "\n" + "--batch_c914-a60c-1877--";var getContactOptions = { url: url, method: "POST", json:false, headers: { "content-type": "multipart/mixed;boundary=batch_c914-a60c-1877", 'Authorization': 'Basic ' + new Buffer(config.user + ":" + config.password).toString('base64') }, body: sBody };function getContact() { return new Promise(function(resolve,reject){ var requestC = request.defaults({jar: true}); console.log("Step1: get contact via url: " + url ); requestC(getContactOptions,function(error,response,body){ if( error){ console.log("error occurred: " + error); reject(error); } console.log("response:" + body); var nStartIndex = body.indexOf("{"); var nLastIndex = body.lastIndexOf("}"); if( nStartIndex < 0 || nLastIndex < 0) return; var sPayload = body.substring(nStartIndex, ++nLastIndex); resolve(JSON.parse(sPayload)); }); }); }function displayResult(oResult){ console.log(oResult); } getContact().then(displayResult);
使用node命令直接執行這個.js檔案:
得到結果:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2645493/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用nodejs建立Marketing Cloud的contact資料NodeJSCloud
- 使用nodejs對Marketing Cloud的contact主資料進行修改操作NodeJSCloud
- 如何讓某些使用者對Marketing Cloud的contact資料只能實施只讀操作Cloud
- 使用postman建立Marketing Cloud的ContactPostmanCloud
- 如何用Java程式碼在SAP Marketing Cloud裡建立contact資料JavaCloud
- 使用Java程式碼在SAP Marketing Cloud上建立Contact資料JavaCloud
- 使用postman修改SAP Marketing Cloud contact主資料PostmanCloud
- Marketing Cloud的contact merge機制Cloud
- SAP Marketing Cloud裡的contact main facet是什麼意思CloudAI
- Marketing Cloud contact主資料的csv匯入Cloud
- 如何使用Chrome找到Marketing Cloud某個contact的guidChromeCloudGUI
- SAP Marketing Cloud的Contact匯入配置和資料合併原理Cloud
- SAP Marketing Cloud Contact 模型的匯入配置和資料合併原理Cloud模型
- 使用CDS view開發SAP Marketing contact的facet追溯工具View
- 使用JavaCV實現讀取視訊資訊及自動擷取封面圖Java
- 如何在呼叫Marketing Cloud contact建立API時增加對擴充套件欄位的支援CloudAPI套件
- SAP ABAP OData 服務的 $count 操作實現
- 在 SAP BAS 裡使用 SAP UI5 應用消費 OData 的 Create 和 Delete 操作UIdelete
- OData服務在SAP CRM,Cloud for Customer和S/4HANA上的實現比較Cloud
- SAP UI5裡Batch操作和Read操作的區別UIBAT
- 在 Excel 裡使用 ODBC 讀取 SAP BTP 平臺上 CDS view 的資料ExcelView
- 在SAP WebClient UI裡使用AJAX進行非同步資料讀取WebclientUI非同步
- SAP Marketing Cloud Restful API SDK 使用案例分享CloudRESTAPI
- SAP Gateway Service Builder 裡的 OData 服務實現方式GatewayUI
- SAP OData 框架裡的快取(Cache)設計專題講座試讀版框架快取
- 如何使用 Postman 傳送 SAP OData Batch 請求到 ABAP 後臺伺服器試讀版PostmanBAT伺服器
- 使用SAP Cloud Application Programming模型開發OData的一個實際例子CloudAPP模型
- 在 OpenResty 裡實現程式間通訊REST
- 如何在Marketing Cloud裡建立extension field擴充套件欄位Cloud套件
- 使用 SAP Cloud SDK 連線 OData 服務Cloud
- SAP Cloud for Customer和SAP Fiori系統裡的OData測試工具Cloud
- SAP Marketing Cloud 功能概述(一)Cloud
- SAP Marketing Cloud 功能概述(二)Cloud
- SAP Marketing Cloud 功能概述(三)Cloud
- SAP Marketing Cloud 功能概述(四)Cloud
- 如何從ERP將Material的Batch資訊下載到CRM並儲存在settype COMM_PR_BATCH裡BAT
- TensorFlow實現Batch NormalizationBATORM
- Spring Cloud Eureka原理分析(三):註冊資訊讀取(服務端)SpringCloud服務端