Я использую узел js в лямбда-функции.Мне нужно сохранить некоторые детали в динамо-базе данных. При передаче значений мне нужно проверить, существует ли emailid в динамо-базе данных или нет. Если emailid уже существует, он должен вернуть ошибку ... Только если почтаИдентификатор отсутствует. Данные должны храниться в БД ... На данный момент я опубликую код, который я сделал, чтобы проверить, существует ли в БД emailID.
const AWS = require('aws-sdk');
var docClient = new AWS.DynamoDB.DocumentClient();
var tableName = "Testing";
exports.handler = (event, context, callback) => {
console.log(event)
let login = {
TableName: 'Testing',
Key: {'EmailID': 'abc@gmail.com'}
};
docClient.get(login, function(err, data){
if(err){
console.log("error");
}else{
console.log("Succes");
}
if (typeof data.Item.EmailID === 'undefined') {
// variable is undefined
console.log("useridndefined");
}
else {
console.log("Found and EmailID attribute: "+ data.Item.EmailID);
}
});
}
Получаю ошибку:
{
"errorMessage": "RequestId: a3b80d66-c6ab-4de2-8bdc-195d1b0eafac Process exited before completing request"
}
{"errorMessage":"The provided key element does not match the schema","errorType":"ValidationException","stackTrace":["Request.extractError (/var/runtime/node_modules/aws-sdk/lib/protocol/json.js:48:27)","Request.callListeners (/var/runtime/node_modules/aws-sdk/lib/sequential_executor.js:105:20)","Request.emit (/var/runtime/node_modules/aws-sdk/lib/sequential_executor.js:77:10)","Request.emit (/var/runtime/node_modules/aws-sdk/lib/request.js:683:14)","Request.transition (/var/runtime/node_modules/aws-sdk/lib/request.js:22:10)","AcceptorStateMachine.runTo (/var/runtime/node_modules/aws-sdk/lib/state_machine.js:14:12)","/var/runtime/node_modules/aws-sdk/lib/state_machine.js:26:10","Request.<anonymous> (/var/runtime/node_modules/aws-sdk/lib/request.js:38:9)","Request.<anonymous> (/var/runtime/node_modules/aws-sdk/lib/request.js:685:12)","Request.callListeners (/var/runtime/node_modules/aws-sdk/lib/sequential_executor.js:115:18)"]}
Пожалуйста, помогите мне сделать это. Только если emailID выходит из БД, он должен вернуть успех, в противном случае его нет
Моя схема:
CustomerName String : abc
EmailID String : abc@gmail.com
Password String : abc
Name String : abc