Почему DynamoDB не будет принимать пустую карту через PHP API?

Я пытаюсь поместить элемент в свою DynamoDB, используя API-интерфейс Amazons PHP, однако получаю

Aws \ DynamoDb \ Exception \ DynamoDbException [0]: найдено начало списка
где не ожидал

где тот же самый JSON можно поставить через веб-интерфейс Amazon.

Json:

{"Url":"test","Referers":{}}

Дамп массива PHP как Marshaled от Aws \ DynamoDb \ Marshaler

array (size=2)
'Url' =>
array (size=1)
'S' => string 'test' (length=4)
'Referers' =>
array (size=1)
'M' =>
array (size=0)
empty

Я попытался с пустым списком, и кажется, что только пустые объекты карты вызывают проблемы. Зачем? Тем не менее, это можно сделать с помощью их веб-интерфейса. Есть ли обходной путь или я делаю что-то не так?

Мой код:

$client = DynamoDbClient::factory(/*settings*/);
$marshaler = new Marshaler();

$response = $client->putItem(array(
'TableName' => 'StatisticsVisits',
'Item' => $marshaler->marshalJson('{"Url":"test","Referers":{}}')
));

0

Решение

Задача ещё не решена.

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

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

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector