【发布时间】:2021-01-18 17:49:09
【问题描述】:
我对使用 AWS 和 aws-cli 还很陌生。我正在尝试通过使用 aws-SDK 编写节点脚本来更新 dynamo DB 表。我创建了一个共享凭证文件,其中包含来自我的两个 aws 帐户的所有凭证,现在我无法将相关凭证配置为我试图运行以更新 Db 的脚本。因此,我使用 aws.config.update() 方法来更新配置,但它仍然无法完成工作,因此当我运行代码时出现“ResourceNotFoundException”。这是我的代码。
const aws = require("aws-sdk");
aws.config.update({
accessKeyId: "xxxxxxxx",
accessSecretKey: "xxxx",
region: "ap-south-1",
});
const docClient = new aws.DynamoDB.DocumentClient();
async function update() {
try {
var params = {
TableName: "employee",
Key: {
ID: "1",
},
UpdateExpression: "set EmployeeName =:fullName",
ExpressionAttributeValues: {
":fullName": "test 3",
},
};
var result = docClient.update(params, function (err, data) {
if (err) console.log(err);
else console.log(data);
});
console.log(result);
} catch (error) {
console.error(error);
}
}
update();
请帮我找到设置相关配置的解决方案以及 aws.config.update() 对我不起作用的原因。
【问题讨论】:
-
这是您未修改的代码吗?
aws.config.update()如果在new aws.DynamoDB.DocumentClient()之后调用之后 将不 工作,但如果在之前 使用时应该按预期工作,如下所示。跨度> -
@Michael-sqlbot 是的。这是我未修改的代码。
-
假设您正在运行最新的 SDK,我无法轻易解释这一点。请务必在文件顶部添加
"use strict";,以帮助捕捉一些细微的拼写错误。我在这里看不到任何东西,但据我所知,这仍然被认为是最佳做法。 -
谢谢,我会记住的。
标签: amazon-web-services amazon-dynamodb aws-sdk-js