Soy un principiante en AWS DynamoDb y ahora estoy atascado. Estoy escribiendo una función Lambda en node.js para consultar elementos de DynamoDb. DeviceID es la clave de partición. La idea es consultar la última entrada. El desafío es que siempre tengo un resultado "nulo".
Por favor, ayúdame a seguir adelante. Cualquier sugerencia, tip,… es más que bienvenida. Realmente aprecio eso.
Aquí está el código de mi lambda:
const AWS = require('aws-sdk'); const docClient = new AWS.DynamoDB.DocumentClient() async function getLastAliine3(deviceID) { const params = { TableName: 'AliineTable', IndexName: 'deviceID-Ux-index', key: { deviceID: deviceID }, KeyConditionExpression: 'deviceID= :dID', ExpressionAttributeValues: { ':dID': 'deviceID' }, ScanIndexForward: false, Limit: 1 } try { const { Item } = await docClient.query(params).promise() return Item } catch (err) { console.log("DDB ERROR MG: ", err) } } module.exports = getLastAliine3 ExpressionAttributeValues: { ':dID': 'deviceID' },Está pasando la cadena 'deviceId' a la consulta en lugar del valor de su variable. Esto debería solucionar el problema:
ExpressionAttributeValues: { ':dID': deviceID },