【发布时间】:2019-05-29 03:30:03
【问题描述】:
我是 Salesforce 新手。我试图将批量 api 2.0 集成到我们的内部 php 应用程序之一。我能够将 csv 文件上传到销售人员并进行处理。但它每次都返回更新为 0 的记录。调试日志中没有失败或没有任何内容。有人可以建议我在这里做错了什么吗?
我尝试调用 api,将 csv 中的相同数据作为字符串传递,并成功更新。只有当我上传 csv 本身时才有问题。
这是我的代码:
//code for creating the job id
$url = "$instance_url/services/data/v42.0/jobs/ingest";
$content = json_encode(array("object" => 'Account', "externalIdFieldName" => "Id","contentType"=>'CSV',"operation" => 'update',"lineEnding" => "LF"));
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_HTTPHEADER,
array("Authorization: OAuth $access_token",
"Content-type: application/json; charset=UTF-8",
"Accept: text/csv"
));
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($curl, CURLOPT_POSTFIELDS, $content);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
//code for uploading the csv for bulk update
$url = "$instance_url/services/data/v42.0/jobs/ingest/7509D0000008eSuQAI/batches";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_HTTPHEADER,
array("Authorization: OAuth $access_token",
"Content-type: text/csv",
"Accept: application/json"
));
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "PUT");
$file = "test-3.csv";
curl_setopt($curl, CURLOPT_POSTFIELDS, $file);
curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
【问题讨论】:
标签: php salesforce