我在处理无服务器框架和 DynamoDB 时遇到了一些麻烦。
执行我的 lambda 函数后,
context.succeed(result)
将返回结果,
但没有任何内容写入 DynamoDB。
这是demo repo的链接.
我读过这篇文章question
我将资源添加到 s-resources-cf.json
中,
然后再次部署无服务器资源。
发送请求后,它仍然对 DynamoDB 不执行任何操作。
这是我所做的事情:
创建一个表:
posts
,主键位于特定区域将
AdministratorAccess
附加到我的IAM
角色(我知道这样做不好。)添加
{"效果": "允许", "操作": ["*"], "资源":"arn:aws:dynamodb:${region}:*:table/* "}
到s-resources-cf.json
我还有什么误解吗?
最佳答案
您的演示存储库似乎不包含 AWS SDK 和设置区域,如 Getting Started guide 中所述。 。即:
var AWS = require("aws-sdk");
var DOC = require("dynamodb-doc");
AWS.config.update({region: "us-west-1"});
var docClient = new DOC.DynamoDB();
...
请注意,dynamo-doc
大约一年前已被弃用。您可能想尝试DynamoDB DocumentClient反而。这个更新的 API 具有更清晰的错误处理语义,可能有助于指出问题所在。
关于amazon-dynamodb - 使用 DynamoDB 的无服务器框架 : Lambda function work, 但数据尚未保存到 DynamoDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37347003/