DynamoDB - Schlüsselelement entspricht nicht dem Schema
Ich versuche, ein Element in meiner Dynamodb-Tabelle + Users + zu aktualisieren. Ich habe viele verschiedene Methoden ausprobiert, aber immer die gleiche Fehlermeldung erhalten:
Das angegebene Schlüsselelement entspricht nicht dem Schema
Die Erstellung eines Elements funktioniert ebenso wie eine Abfrage, jedoch nicht die Aktualisierung. Wenn ich in DynamoDB nachschaue, ist der Benutzer gut angelegt:
{
"email": "[email protected]",
"password": "123",
"registration": 1460136902241,
"verified": false
}
Hier ist die Tabelleninformation:
Tabellennam: Benutzer Primärer Partitionsschlüssel: email (String) Primärer Sortierschlüssel: RegistrationsnummerHier ist der Code (von Lambda aufgerufen):
exports.handler = function(event, context)
{
var AWS = require("aws-sdk");
var docClient = new AWS.DynamoDB.DocumentClient();
var params = {
TableName: "Users",
Item:{
email: "[email protected]",
password: "123",
verified: false,
registration: (new Date()).getTime(),
}
};
// Create the user.
docClient.put(params, function(err, data)
{
if (err)
{
context.fail("Put failed...");
return;
}
var params = {
TableName: "Users",
Key: { email : "[email protected]" },
AttributeUpdates: {
verified: {
Action: "PUT",
Value: true
}
}
};
// Update the user.
docClient.update(params, function(err, data)
{
if (err)
{
console.log(JSON.stringify(err));
context.fail(JSON.stringify(err));
return;
}
context.succeed("User successfully updated.");
});
});
};
Haben Sie eine Vorstellung davon, was an meinem Code falsch sein könnte?