Как я могу прочитать ошибки CloudKit?

У меня есть скрипт php, который пытается создать запись в базе данных CloudKit.

Возвращает эту ошибку:

object (stdClass) # 1 (3) {[«uuid»] => string (36)
«c70072a1-fab6-491b-a68f-03b9056223e1» [«serverErrorCode»] =>
строка (11) «BAD_REQUEST» [«причина»] => строка (62)
«BadRequestException: неожиданный ввод в [строка: 2, столбец: 10]»}

Я предполагаю, что это точно говорит мне, в чем проблема, но я не знаю, как это интерпретировать. Где строка 2 и столбец 10?

Я думаю, что это связано с JSON, который я посылаю в запросе на создание записи.

$url = 'https://api.apple-cloudkit.com/database/1/' . $CONTAINER .    '/development/public/records/modify';
$opDict = '{"operationType": "create",
"record":"Artists",
"fields": {"firstName":{"value":"Mei"},
"lastName": {"value":"Chen"},
"principalDiscipline": {"value":""},
"secondaryDiscipline":{"value":""}},
"recordName":"Mei Chen"}';

$body = '{"operations":['.$opDict.']}';
echo $body;

Когда я проверяю вывод из $ body

{«operations»: [{«operationType»: «create», «record»: «Artists»,
«fields»: {«firstName»: {«value»: «Mei»}, «lastName»: {«value»: «Chen»},
«PrincipalDiscipline»: {«value»: «»},
«secondDiscipline»: {«value»: «»}}, «recordName»: «Mei Chen»}]}

он передает JSON lint, поэтому я не уверен, что это проблема JSON.

Может кто-нибудь объяснить мне, как интерпретировать ошибку, которую я получаю от CloudKit. Документы немного расплывчаты на ошибках.

1

Решение

Я не имею ни малейшего понятия о CloudKit, но я нашел эта страница документации с помощью следующего примера:

{
"operationType" : "create",
"record" : {
"recordType" : "Artist",
"fields" : {
"firstName" : {"value" : "Mei"},
"lastName" : {"value" : "Chen"}
}
"recordName" : "Mei Chen"},
}

который определенно отличается от того, что вы пытаетесь отправить, как с точки зрения структуры данных
(ваш record это не словарь) и содержание (у вас нет recordType).
Таким образом, в то время как ваш JSON синтаксически корректен, вы просто отправляете недопустимые данные содержимого, завернутые в допустимый JSON, что, скорее всего, является причиной появления сообщения об ошибке.

0

Другие решения

Других решений пока нет …