我正在尝试执行 batch_get_item 以从表中请求多个项目。我正在关注 DynamoDB 文档中的 PHP 示例,但没有得到我期望的结果。
以下是代码:
$batch_array = array ();
$batch_array[]= array ('HashKeyElement' =>
array( AmazonDynamoDB::TYPE_STRING => 'V1L3M5O5L1W8R5B6D2Q1S8V0B3R8M7A6R0X0'));
$options = array (
'RequestItems' => array(
'profile_dev' => array (
'Keys' => $batch_array
)
)
);
$result = $this->db->batch_get_item($options);
我没有得到数据,而是得到了一个很长的回复,并且我从它的尾部包含了相关信息:
[x-aws-body] => {"RequestItems":{"profile_dev":{"Keys":[{"HashKeyElement":{"S":"V1L3M5O5L1W8R5B6D2Q1S8V0B3R8M7A6R0X0"}}]}}} ) [body] => CFSimpleXML Object ( [__type] => com.amazon.coral.validate#ValidationException [message] => One or more parameter values were invalid: The provided key size does not match with that of the schema ) [status] => 400 ) )
此表的 hashKey 是一个字符串。它有一个 rangeKey,但我使用的是 hashKey,所以我可以获得与 hashKey 匹配的所有行。我错过了什么?