调用invoke API 报错, 错误信息如下: Network Failure timeout. Using Lambda

0

【以下的问题经过翻译处理】 我正在尝试调用一个 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;
};
profile picture
전문가
질문됨 8달 전55회 조회
1개 답변
0

【以下的回答经过翻译处理】 Lambda函数的安全组没有配置出站规则,因此我为所有端口打开了出站规则,这样它就可以运行了!

profile picture
전문가
답변함 8달 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인