기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
2단계: Lambda 함수 업데이트
이 주제에서는 myDateTimeFunction.js
파일을 업데이트합니다. 다음 단계에서는 이 파일을 사용하여 업데이트된 함수를 배포합니다. 그러면 Lambda 함수의 현재 버전에서 업데이트된 버전으로 프로덕션 트래픽을 CodeDeploy 이동하여 배포를 트리거합니다.
Lambda 함수를 업데이트하려면
-
myDateTimeFunction.js
을(를) 엽니다. -
switch
블록에 있는time
이라는case
의 시작과 끝에서 두 개의 주석 마커("/*
" 및 "*/
")와 설명 텍스트를 제거합니다.주석 처리가 해제된 코드를 사용하면 새 파라미터인
time
을 함수에 전달할 수 있습니다.time
을 업데이트된 함수에 전달하면 이 함수는 현재hour
,minute
및second
를 반환합니다. -
myDateTimeFunction.js
을(를) 저장합니다. 이 템플릿은 다음과 같습니다.'use strict'; exports.handler = function(event, context, callback) { if (event.body) { event = JSON.parse(event.body); } var sc; // Status code var result = ""; // Response payload switch(event.option) { case "date": switch(event.period) { case "yesterday": result = setDateResult("yesterday"); sc = 200; break; case "today": result = setDateResult(); sc = 200; break; case "tomorrow": result = setDateResult("tomorrow"); sc = 200; break; default: result = { "error": "Must specify 'yesterday', 'today', or 'tomorrow'." }; sc = 400; break; } break; case "time": var d = new Date(); var h = d.getHours(); var mi = d.getMinutes(); var s = d.getSeconds(); result = { "hour": h, "minute": mi, "second": s }; sc = 200; break; default: result = { "error": "Must specify 'date' or 'time'." }; sc = 400; break; } const response = { statusCode: sc, headers: { "Content-type": "application/json" }, body: JSON.stringify( result ) }; callback(null, response); function setDateResult(option) { var d = new Date(); // Today var mo; // Month var da; // Day var y; // Year switch(option) { case "yesterday": d.setDate(d.getDate() - 1); break; case "tomorrow": d.setDate(d.getDate() + 1); default: break; } mo = d.getMonth() + 1; // Months are zero offset (0-11) da = d.getDate(); y = d.getFullYear(); result = { "month": mo, "day": da, "year": y }; return result; } };