即使ExpressionAttributeValues不为空,它也会给我这个错误ValidationException:ExpressionAttributeValues不能为空
app.post('/gpsfromuser', passport.authenticate('jwt', {session: false}), (req, res) => {
var xcorpassed = req.body.xcor
var ycorpassed = req.body.ycor
console.log(xcorpassed);
console.log(ycorpassed);
var params = {
TableName:passengers,
Key:{
"pid": req.user.id
},
UpdateExpression: "set cordx=:x, cordy=:y",
ExpressionAttributeValues:{
":x":xcorpassed,
":y":ycorpassed
},
ReturnValues:"UPDATED_NEW"
};
console.log("Updating the item...");
docClient.update(params, function(err, data) {
if (err) {
console.error("Unable to update item. Error JSON:", JSON.stringify(err, null, 2));
} else {
console.log("UpdateItem succeeded:", JSON.stringify(data, null, 2));
return res.status(200).json({msg: "success1"});
}
});
答案 0 :(得分:0)
如果未定义表达式属性的值,则会发生此错误。
为了调试,我在初始化参数之前打印了表达式属性的值。
<div>
<label for="something">Something:</label>
<input type="text" name="something" id="something" />
</div>
我希望答案会有所帮助!