Lambda提示参考错误,说事件未定义?

0

【以下的问题经过翻译处理】 我得到了一个引用错误,说事件没有定义。因此,我正在尝试获取事件并从中获取属性,然后将它们保存到 Dynamo 中。

如果我硬编码数据,它会将其输入到我的数据库中。所以我知道我正在获取输入的数据。

const AWS = require('aws-sdk');
const docClient = new AWS.DynamoDB.DocumentClient();


exports.handler = async (event) => {

  try {
    await createItem()
    return { body: 'Successfully created item!' }
  } catch (err) {
    return { error: err }
  }
}

const params = {
  TableName: 'serverlessrepo-AestheticsFormDB-FormDataTable-1M0ZV9SXX6E4S',
      Item: {
      formId : event.formId,
    	CreditApp : event.creditApp,
    	FollowUp : event.followUp,
    	Injectables : event.injectables,
    	Marketing : event.marketing,
    	MeetAgain :"event.meetAgain,
    	MeetingRating :"event.scale,
    	NoOfPatients : event.patientCount,
    	ReachOut : event.reachOut,
    	SoloOwner : event.soloOwner
  }
}

async function createItem(){
  try {
    await docClient.put(params).promise();
  } catch (err) {
    return err;
  } 
profile picture
전문가
질문됨 8달 전23회 조회
1개 답변
0

【以下的回答经过翻译处理】 你在lambda处理程序上下文之外初始化了参数,因此事件对象不被知道。你的代码应该像这样: const AWS = require('aws-sdk'); const docClient = new AWS.DynamoDB.DocumentClient();

exports.handler = async (event) => { try { await createItem(event) return { body: 'Successfully created item!' } } catch (err) { return { error: err } } }

async function createItem(event){ params = { TableName: 'serverlessrepo-AestheticsFormDB-FormDataTable-1M0ZV9SXX6E4S', Item: { formId : event.formId, CreditApp : event.creditApp, FollowUp : event.followUp, Injectables : event.injectables, Marketing : event.marketing, MeetAgain : event.meetAgain, MeetingRating : event.scale, NoOfPatients : event.patientCount, ReachOut : event.reachOut, SoloOwner : event.soloOwner } }

try { await docClient.put(params).promise(); } catch (err) { return err; } }

profile picture
전문가
답변함 8달 전

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

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

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

관련 콘텐츠