【以下的问题经过翻译处理】 我正在尝试调用一个 Lambda 函数来将数据存储在 DynamoDB 表中。在我的 AWS 帐户中,它可以正常工作,但在我所在公司的 AWS 帐户中却无法工作。Cloudwatch 没有显示任何错误。超时发生在 "await dynamodb.describeTable(describeParams).promise();" 这行代码处。
我的代码如下:
const AWS = require('aws-sdk');
const docClient = new AWS.DynamoDB.DocumentClient();
const dynamodb = new AWS.DynamoDB();
exports.handler = async (event) => {
const valueTostore = event.body || 'default_value';
const params = {
TableName: 'my-values',
Item: {
id: new Date().toISOString(),
SessionConfig: valueTostore
}
};
try {
const describeParams = { TableName: 'my-values' };
await dynamodb.describeTable(describeParams).promise();
} catch (error) {
const response = {
statusCode: 500,
body: JSON.stringify({ message: '访问表时出错' })
};
return response;
}
try {
await docClient.put(params).promise();
} catch (error) {
const response = {
statusCode: 500,
body: JSON.stringify({ message: '存储值时出错' })
};
return response;
}
const response = {
statusCode: 200,
body: JSON.stringify({ message: '成功存储值' })
};
return response;
};