使用nodejs對Marketing Cloud的contact主資料進行修改操作
假設在Marketing Cloud有這樣一個contact主資料:
現在需求是使用程式語言比如nodejs修改這個contact例項的高亮屬性。
程式碼如下:
var config = require("./mcConfig");var request = require('request');var url = config.tokenURL;console.log("user: " + config.user + " password: " + config.password); var getTokenOptions = { url: url, method: "GET", json:true, headers: { 'Authorization': 'Basic ' + new Buffer(config.user + ":" + config.password).toString('base64'), "content-type": "application/json", "x-csrf-token" :"fetch" } };function getToken() { return new Promise(function(resolve,reject){ var requestC = request.defaults({jar: true}); console.log("Step1: get csrf token via url: " + url ); requestC(getTokenOptions,function(error,response,body){ var csrfToken = response.headers['x-csrf-token']; if(!csrfToken){ reject({message:"token fetch error: " + error}); return; } console.log("Step1: csrf token got: " + csrfToken); resolve(csrfToken); }); }); }function updateContact(token){ return new Promise(function(resolve, reject){ var sPostData = "--batch_1f7d-bd35-caed" + "\n" + "Content-Type: multipart/mixed; boundary=changeset_8f9e-9a44-9f9e" + "\n" + "\n" + "--changeset_8f9e-9a44-9f9e" + "\n" + "Content-Type: application/http" + "\n" + "Content-Transfer-Encoding: binary" + "\n" + "\n" + "MERGE Consumers('02000A21209F1EE99CDF1A1FC9AA8065')?sap-client=100 HTTP/1.1" + "\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" + "x-csrf-token: fQ2Pwfmf0K_LVYoKV9QYUw==" + "\n" + "Content-Type: application/json" + "\n" + //"Content-Length: 215" + "\n" + "\n" + "{\"YY1_CustomerType_ENH\":\"Jerry測試1\"}" + "\n" + "--changeset_8f9e-9a44-9f9e--" + "\n" + "\n" + "--batch_1f7d-bd35-caed--"; var requestC = request.defaults({jar: true}); var createOptions = { url: config.updateContactURL, method: "POST", json:false, headers: { "content-type": "multipart/mixed;boundary=batch_1f7d-bd35-caed", 'x-csrf-token': token }, body:sPostData }; requestC(createOptions,function(error,response,data){ if(error){ reject(error.message); }else { debugger; console.log("Contact updated successfully"); resolve(data); } }); }); } getToken().then(updateContact).catch((error) =>{ console.log("error: " + error.message); });
我在nodejs程式碼裡把需要更改的欄位值賦為"Jerry測試1”:
執行之後這個屬性被成功更新了:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2645490/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用postman修改SAP Marketing Cloud contact主資料PostmanCloud
- 使用nodejs建立Marketing Cloud的contact資料NodeJSCloud
- Marketing Cloud contact主資料的csv匯入Cloud
- 使用nodejs實現OData的batch操作在Marketing Cloud裡讀取contact資訊NodeJSBATCloud
- 如何讓某些使用者對Marketing Cloud的contact資料只能實施只讀操作Cloud
- 使用postman建立Marketing Cloud的ContactPostmanCloud
- 使用Java程式碼在SAP Marketing Cloud上建立Contact資料JavaCloud
- Marketing Cloud的contact merge機制Cloud
- 如何使用Chrome找到Marketing Cloud某個contact的guidChromeCloudGUI
- SAP Marketing Cloud的Contact匯入配置和資料合併原理Cloud
- SAP Marketing Cloud Contact 模型的匯入配置和資料合併原理Cloud模型
- 如何用Java程式碼在SAP Marketing Cloud裡建立contact資料JavaCloud
- SAP Marketing Cloud裡的contact main facet是什麼意思CloudAI
- 如何在呼叫Marketing Cloud contact建立API時增加對擴充套件欄位的支援CloudAPI套件
- 使用CDS view開發SAP Marketing contact的facet追溯工具View
- 如何對Internet Marketing網路市場營銷進行資料包表分析
- JQuery對ASP.NET MVC資料進行操作jQueryASP.NETMVC
- 使用Spring Data JPA進行資料庫操作Spring資料庫
- vue對table的某一行的資料進行編輯,刪除操作Vue
- SAP Marketing Cloud Restful API SDK 使用案例分享CloudRESTAPI
- Jmeter使用beanshell對資料進行加密傳輸JMeterBean加密
- SAP PP使用ECR去修改BOM主資料
- Rasa中使用lookup table時針對中文對RegexEntityExtractor進行修改
- 如何使用帝國CMS進行資料庫匯出操作?資料庫
- 使用 Azure SNAT 為 SAP Commerce Cloud 的 outbound connection 進行埠對映Cloud
- [譯] 使用 Pandas 對 Kaggle 資料集進行統計資料分析
- NodeJs中資料庫的使用NodeJS資料庫
- nodejs + express + mssql 封裝資料操作NodeJSExpressSQL封裝
- 6.DJango在views裡面對獲取資料進行操作DjangoView
- SAP Marketing Cloud 功能概述(一)Cloud
- SAP Marketing Cloud 功能概述(二)Cloud
- SAP Marketing Cloud 功能概述(三)Cloud
- SAP Marketing Cloud 功能概述(四)Cloud
- 使用vCenter對ESXi主機進行補丁升級
- 使用 Dynatrace 對 Node.js 應用的效能資料進行分析Node.js
- matlab 對資料進行打亂Matlab
- Node.js(nodejs)對本地JSON檔案進行增、刪、改、查操作(輕車熟路)Node.jsNodeJSJSON
- SQL對資料進行按月統計或對資料進行按星期統計的例項程式碼SQL