【发布时间】:2016-05-21 00:23:03
【问题描述】:
我正在尝试使用 lambda 函数中的多个过滤器表达式值过滤我的扫描结果,但遇到错误。
Lambda 函数:
'use strict';
console.log('Loading function');
var AWS = require("aws-sdk");
var dynamodb = new AWS.DynamoDB();
exports.handler = (event, context) => {
var params = {
TableName : "4298.Dev.Log_OnP.RecruitingDemandOrders",
FilterExpression: ("#DFC <> Recruiting"
,"#DS = :FI"
,"#ETA = :FA"
),
ExpressionAttributeNames: {
"#DS": "demand.status"
,"#DFC":"demand.fulfillmentChannel3"
,"#ETA":"exportedToATAS"
},
ExpressionAttributeValues: {
":FA": {"S" : "false"}
,":FI":{"S" : "Filled"}
}
}
dynamodb.scan(params, function(err, data) {
if( err ) {
console.log('dynamoProcessor-getdemandRecord ERROR' + err);
} else {
for (var i in data.Items) {
i = data.Items[i];
console.log(i);
context.done(null, "Ciao!");
}
}
});
}
错误: 表达式中未使用的 ExpressionAttributeNames 中提供的值:键:{#DS, #DFC}
我写的过滤器表达式是否正确?
【问题讨论】:
标签: node.js amazon-dynamodb aws-sdk aws-lambda