Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.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
Node.js 在nodejs中编写的AWS Lambda函数没有更新我的DynamoDB_Node.js_Amazon Web Services_Aws Lambda_Amazon Dynamodb - Fatal编程技术网

Node.js 在nodejs中编写的AWS Lambda函数没有更新我的DynamoDB

Node.js 在nodejs中编写的AWS Lambda函数没有更新我的DynamoDB,node.js,amazon-web-services,aws-lambda,amazon-dynamodb,Node.js,Amazon Web Services,Aws Lambda,Amazon Dynamodb,我是AWS的新手,但我遇到了一个障碍。。。。 我正在尝试使用lambda函数更新dynamodb表中某个项的属性。正在触发lambda函数,但由于某些原因,我无法更新该项 我能够成功地从dynamodb中删除该项,但是当我尝试更新某项的属性时,什么也没有发生 函数执行后,属性human_confirm未更新为true。我一直在尝试我在谷歌上发现的不同东西,但没有任何效果:( 确保在serverless.yml文件中有以下配置:dynamodb:PutItem iamRoleStatements:

我是AWS的新手,但我遇到了一个障碍。。。。 我正在尝试使用lambda函数更新dynamodb表中某个项的属性。正在触发lambda函数,但由于某些原因,我无法更新该项

我能够成功地从dynamodb中删除该项,但是当我尝试更新某项的属性时,什么也没有发生

函数执行后,属性human_confirm未更新为true。我一直在尝试我在谷歌上发现的不同东西,但没有任何效果:(


确保在
serverless.yml
文件中有以下配置:
dynamodb:PutItem

iamRoleStatements:
    - Effect: "Allow"
      Action:
        - "dynamodb:PutItem"
      Resource: "*"

谢谢你的帮助@kaxi1993 我相信我的角色权限是正确的。以下是对我有效的代码

'use strict';
console.log('Loading function');
var AWS = require('aws-sdk');

var dynamodb = new AWS.DynamoDB({apiVersion: '2012-08-10'});

exports.handler = (event, context, callback) => {
AWS.config.update({
  region: 'us-east-1'
});

var instance = event.instanceID;

var params = {
    TableName: 'reminders',
    Key: {
        'instanceID': {
         S: instance
        }
    },
    UpdateExpression: 'set human_confirmed = :x',
    ExpressionAttributeValues: {
       ':x': {S: 'true'},
    },
    ReturnValues: 'UPDATED_NEW'
};
dynamodb.updateItem(params, function(err, data) {
    if (err) 
        callback(err, null); // an error occurred
    else     
        callback(null, data);           // successful response
});
callback(null, 'Updating instance from reminder table: ' + instance + '.... The system will no longer contain automated emails about this resource.');
})

'use strict';
console.log('Loading function');
var AWS = require('aws-sdk');

var dynamodb = new AWS.DynamoDB({apiVersion: '2012-08-10'});

exports.handler = (event, context, callback) => {
AWS.config.update({
  region: 'us-east-1'
});

var instance = event.instanceID;

var params = {
    TableName: 'reminders',
    Key: {
        'instanceID': {
         S: instance
        }
    },
    UpdateExpression: 'set human_confirmed = :x',
    ExpressionAttributeValues: {
       ':x': {S: 'true'},
    },
    ReturnValues: 'UPDATED_NEW'
};
dynamodb.updateItem(params, function(err, data) {
    if (err) 
        callback(err, null); // an error occurred
    else     
        callback(null, data);           // successful response
});
callback(null, 'Updating instance from reminder table: ' + instance + '.... The system will no longer contain automated emails about this resource.');