Я не совсем уверен, были ли какие-либо последние обновления API-интерфейсов Watson Analytics, но на самом деле мой исходный код работал правильно, теперь у меня проблемы.php - Watson Analytics - Возвращение malformed
У нас есть функция в php, которая построила переменную csv, а затем выполнит завиток, чтобы загрузить ее, как указано на странице API Explorer. Выполните, как код:
функция populateDataset_Internal ($ DSID, $ segmentId, $ strJsonColumns, $ strLine) {
$curl = curl_init();
$csv = $strJsonColumns;
$csv .= $strLine;
echo $csv;
curl_setopt_array($curl, array(
CURLOPT_URL => "/data/v1/datasets/" . $dsId . "/content/" . $segmentId,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
curl_setopt($curl, CURLOPT_POSTFIELDS, $csv),
//CURLOPT_POSTFIELDS => $csv,
CURLOPT_HTTPHEADER => array(
"accept: text/csv",
"content-type: text/csv",
"cache-control: no-cache",
"authorization: Bearer " . $_SESSION["tokenl"],
"x-ibm-client-id: " . $_SESSION["XIBMCLIENTID"],
"x-ibm-client-secret: " . $_SESSION["XIBMCLIENTSECRET"]
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
echo "populateDataset_Internal:" . $response . " - " . $err ."<br/>";
return "";
}
за $ CSV содержит .txt в/CSV содержание, такой пример ниже:
FileType; География; данные; промышленность; сектор; Имя; DateStart; HourStart; ЧАС (HourStart); DateEnd; HourEnd; ЧАС (HourEnd) Статус JOBType, Бразилия; Бета; Финансовый; BANK; испытание; 02/02/2016; 00; 02/02/2016; 01; Завершить
Это плавная работа, пока код не будет заменен в API Explorer. С тех пор мы начали получать ошибочной ошибкой. После обмена некоторыми сообщениями с поддержкой WA Team они предоставили другой исходный код, но проблема не устранена. Код указан выше.
Неужели кто-то сталкивается с той же проблемой или даже имеет представление о том, что происходит?
Привет, Роб, во-первых, спасибо за вашу попытку! Я обновил заголовок инструкции accept как applicationatio n/json, и ошибка сохраняется. Я попытался также прокомментировать строку, и ошибка Malformed все еще возвращается. Есть ли другие вопросы? –
Вам нужно посмотреть код ответа, заголовки и тело. Ошибка Malformed от PHP, потому что вы пытаетесь обработать ответ об ошибке так же, как и ответ успеха. –