Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ValidationException:ExpressionAttributeValue不能为空_Javascript_Node.js_Amazon Web Services_Express_Aws Sdk - Fatal编程技术网

Javascript ValidationException:ExpressionAttributeValue不能为空

Javascript ValidationException:ExpressionAttributeValue不能为空,javascript,node.js,amazon-web-services,express,aws-sdk,Javascript,Node.js,Amazon Web Services,Express,Aws Sdk,尽管ExpressionAttributeValues不是空的,但它给了我以下错误ValidationException:ExpressionAttributeValues不能为空 app.post('/gpsfromuser', passport.authenticate('jwt', {session: false}), (req, res) => { var xcorpassed = req.body.xcor var ycorpassed = req.body.y

尽管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"});
  }
});

如果表达式属性的值未定义,则会发生此错误

为了进行调试,我在初始化参数之前打印了表达式属性的值

console.log('X Coordinate: ' + xcorpassed);
console.log('Y Coordinate: ' + ycorpassed);

我希望答案有帮助

如果表达式属性的值未定义,则会发生此错误

为了进行调试,我在初始化参数之前打印了表达式属性的值

console.log('X Coordinate: ' + xcorpassed);
console.log('Y Coordinate: ' + ycorpassed);

我希望答案有帮助

以下信息将有助于确定问题所在:1。执行更新时,xcorpassed和ycorpassed的值是多少?2.什么是doc客户端?你是怎么创造的?3.此函数的执行输出以及您遇到的确切错误。Docclient是从aws sdk实例化的,xcorpassed和ycorpassed是字符串。输出是我在描述中发布的一个错误。莱昂纳多,我想我已经得到了你分享的东西。我的请求是查看代码执行情况、运行时传递的值等。我尝试了这段代码,在我的本地环境中一切正常。如果你能告诉我这个函数的运行时执行情况,这会很有帮助,就像我在下一篇评论中分享的那样。最有可能的是,某些值在运行时并不像预期的那样,您的代码可以证明这一点。
test so:515>node test-so.js testx testy正在更新项。。。{“TableName”:“test so table”,“Key”:{“pid”:“test”},“UpdateExpression”:“set cordx=:x,cordy=:y”,“ExpressionAttributeValues”:{:x:“testx”,“:y:“testy”},“ReturnValues”:“UPDATED_NEW”}UpdateItem successed:{“Attributes”:{“cordy:”testy”,“cordx:“testx”}
好的,谢谢你的关注。问题出在另一个函数中,即设置passport jwt的函数。欢呼以下信息将有助于确定问题所在:1。执行更新时,xcorpassed和ycorpassed的值是多少?2.什么是doc客户端?你是怎么创造的?3.此函数的执行输出以及您遇到的确切错误。Docclient是从aws sdk实例化的,xcorpassed和ycorpassed是字符串。输出是我在描述中发布的一个错误。莱昂纳多,我想我已经得到了你分享的东西。我的请求是查看代码执行情况、运行时传递的值等。我尝试了这段代码,在我的本地环境中一切正常。如果你能告诉我这个函数的运行时执行情况,这会很有帮助,就像我在下一篇评论中分享的那样。最有可能的是,某些值在运行时并不像预期的那样,您的代码可以证明这一点。
test so:515>node test-so.js testx testy正在更新项。。。{“TableName”:“test so table”,“Key”:{“pid”:“test”},“UpdateExpression”:“set cordx=:x,cordy=:y”,“ExpressionAttributeValues”:{:x:“testx”,“:y:“testy”},“ReturnValues”:“UPDATED_NEW”}UpdateItem successed:{“Attributes”:{“cordy:”testy”,“cordx:“testx”}
好的,谢谢你的关注。问题出在另一个函数中,即设置passport jwt的函数。干杯