Ich habe eine Tabelle 'user_info' in dynamoDB mit einem primären Hash-Schlüssel 'user_id' (String), ohne Bereichsschlüssel, erstellt. Dann habe ich 2 aws Lambda-Funktion erstellt, um die Elemente einzufügen und abzufragen. Ich kann Elemente in die Tabelle einfügen, aber wenn ich die Tabelle abfrage, wird eine ValidationException zurückgegeben: Das angegebene Schlüsselelement stimmt nicht mit dem Schema überein. Meine Anfrage Funktion:ValidationException: Das angegebene Schlüsselelement stimmt nicht mit dem Schema überein
var params = {
Key: {
user_id:{
S: "[email protected]"
}
},
TableName: 'user_info',
ProjectionExpression: 'password'
};
dynamodb.getItem(params,
function(err, data) {
if (err) {
console.log("get item err." + err);
context.done('error','getting item from dynamodb failed: '+err);
}
else {
console.log('great success: '+JSON.stringify(data, null, ' '));
context.succeed('created user ' + event.user_id + ' successfully.');
}
});
Ich erhalte diese Ausnahme:
ValidationException: The provided key element does not match the schema
Seit 1) Ich habe nur einen Hash-Primärschlüssel. 2) user_id ist als String definiert. Ich weiß wirklich nicht, warum es einen Mismatch-Fehler gibt.
Danke .Das hilft mir .. :) –
Brilliant! Dank einer Million scheinen einige Dinge so offensichtlich zu sein, wenn du sie hier gelesen hast. – EranSch