2015-07-28 1 views
2

Новичок для dynamodb и пытается получить новую функцию лямбда для запроса таблицы.Функция запроса с Lambda и DynamoDB

Может кто-нибудь помочь мне и рассказать мне, что случилось с сыном, что я перехожу к функции .query. CLIENT_ID мой хэш-ключ на столе (String)

{ 
    "TableName": "table1", 
    "KeyConditions": { 
     "Client_ID": { 
      "ComparisonOperator": "EQ", 
      "AttributeValueList":[ 
       {"S": "12345"} 
      ] 
     } 
    } 
} 

При тестировании я получаю ошибку назад

"errorMessage": "Need to pass in a valid Condition Object." 

ответ

1

Вы используете DynamoDB Документ SDK или низкий уровень SDK? Похоже, вы используете Document SDK (https://github.com/awslabs/dynamodb-document-js-sdk), и в этом случае вместо этого вы должны использовать объект условия, чтобы указать условия ключа (т.е. KeyConditions = [docClient.Condition («Client_ID», «EQ», «12345»)]). Более простой способ указать KeyConditions - вместо этого использовать параметр KeyConditionsExpression (описано здесь: http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-KeyConditionExpression). Тогда ваши параметры будут выглядеть так: { "TableName": "table1", "KeyConditionExpression": "Client_ID = :str", "ExpressionAttributeValues": {":str": "12345"} }

Смежные вопросы