Lambda에서 DynamoDB를 쿼리하는데 문제가 발생했다.
**One or more parameter values were invalid: Type mismatch for key xyz expected: S actual: M**
에러의 원인은 버전으로, 버전이 바뀌면서 문법이 변경되어서 기존에 쓰던 형식이 사용할 수 없게 되었던 것이었다. 문법을 변경해서 작성해주었다.
var ddb = new aws.DynamoDB({apiVersion: '2012-10-08'});
let ddbParams = {
Item: {
'userId': {S: event.request.userAttributes.sub},
'userName': {S: event.request.userAttributes.name},
'email': {S: event.request.userAttributes.email},
},
TableName: "test-user-tbl"
};
const ddb = new aws.DynamoDB.DocumentClient();
let ddbParams = {
Item: {
'userId': event.request.userAttributes.sub,
'userName': event.request.userAttributes.name,
'email': event.request.userAttributes.email,
},
TableName: "test-user-tbl"
};