DyanmoDB getItem не предоставляет никакого ответа в Asyn c Lambda - PullRequest
0 голосов
/ 14 июля 2020

Я пытался сделать запрос getItem в асинхронной c лямбда-функции к динамо-базе данных, и я вообще не получаю никакого ответа. Мы будем очень благодарны за любое устранение неполадок или помощь.

в общем, я пытаюсь сделать запрос к таблице Dynamodb с помощью AWS SDK getItem, однако, когда я запускаю свой код, нет ответа для await ddb.getItem function

, поэтому я немного не понимаю, что может быть причиной этого.

// Load AWS SDK
const AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "us-east-1" });

// Create the DyanmoDB service object
const ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });

const handler = async (
  event,
  context,
  callback,
  test = false,
  testObjFunc = {
    test: () => {
      Error("Testing enabled");
    }
  }
) => {
  const response = {
    isBase64Encoded: false,
    statusCode: 200,
    headers: { "Content-Type": "application/json", "Access-Control-Allow-Origin": "*" },
    multiValueHeaders: {},
    body: JSON.stringify({ responseBody })
  };

  try {
    // Parameters for DynamodDB getItem call
    const dbParams = {
      TableName: "Table_Name",
      Key: {
        personID: { S: "value" }
      },
      ProjectionExpression: "value_to_return"
    };

    // DynamoDB call to check for item
    const results = await ddb.getItem(dbParams).promise();
    console.log("success");
    console.log(results);

  } catch (error) {
    response.statusCode = 500;
  }

  return response;
};
module.exports.handler = handler;


1 Ответ

0 голосов
/ 15 июля 2020

Вы поместили вызов getitem в блок try, поскольку вы не получаете никакого ответа, это означает, что что-то пошло не так в блоке try.

...