使用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
- 如何讓某些使用者對Marketing Cloud的contact資料只能實施只讀操作Cloud
- 使用nodejs實現OData的batch操作在Marketing Cloud裡讀取contact資訊NodeJSBATCloud
- 使用postman建立Marketing Cloud的ContactPostmanCloud
- 使用Java程式碼在SAP Marketing Cloud上建立Contact資料JavaCloud
- Marketing Cloud的contact merge機制Cloud
- SAP Marketing Cloud的Contact匯入配置和資料合併原理Cloud
- 如何使用Chrome找到Marketing Cloud某個contact的guidChromeCloudGUI
- SAP Marketing Cloud Contact 模型的匯入配置和資料合併原理Cloud模型
- 如何用Java程式碼在SAP Marketing Cloud裡建立contact資料JavaCloud
- SAP Marketing Cloud裡的contact main facet是什麼意思CloudAI
- C#對DataGridView進行新增、修改、刪除資料操作C#View
- 如何在呼叫Marketing Cloud contact建立API時增加對擴充套件欄位的支援CloudAPI套件
- 使用CDS view開發SAP Marketing contact的facet追溯工具View
- JQuery對ASP.NET MVC資料進行操作jQueryASP.NETMVC
- 如何對Internet Marketing網路市場營銷進行資料包表分析
- 使用系統API進行資料庫操作API資料庫
- 使用Spring Data JPA進行資料庫操作Spring資料庫
- vue對table的某一行的資料進行編輯,刪除操作Vue
- SAP Marketing Cloud Restful API SDK 使用案例分享CloudRESTAPI
- 使用Java客戶端對Redis進行操作Java客戶端Redis
- Jmeter使用beanshell對資料進行加密傳輸JMeterBean加密
- iOS中使用RSA對資料進行加密解密iOS加密解密
- 使用RMAN對PDB執行閃回資料庫操作資料庫
- 使用RMAN對CDB執行閃回資料庫操作資料庫
- SAP PP使用ECR去修改BOM主資料
- 對目錄進行操作
- 利用undo進行資料的恢復操作
- 對table的操作進行監控
- F# 優雅使用Dapper進行資料庫操作APP資料庫
- 使用管道符在PowerShell中進行各種資料操作
- 如何使用帝國CMS進行資料庫匯出操作?資料庫
- 對列進行連線操作會影響索引的使用索引
- 使用正則不允許對整表進行操作
- 使用RMAN對資料庫進行異機還原資料庫
- Oracle中對使用者所能使用的資料庫資源進行限制Oracle資料庫