Skip to content

[Doc] Lambda function local testย #1

@tastekim

Description

@tastekim

Local test vs. Lambda test

๋žŒ๋‹ค ํ•จ์ˆ˜๋ฅผ ๋ชจ๋“ˆํ™”ํ•ด์„œ ๋กœ์ปฌ ์„œ๋ฒ„๋ฅผ ์—ฐ ํ›„์— ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ–ˆ์—ˆ๋Š”๋ฐ ๋กœ์ปฌ์—์„œ๋Š” ์ž˜ ๋˜๋‹ค๊ฐ€ ๋žŒ๋‹ค๋กœ ๋„์šฐ๋ฉด ์ƒ๊ฐ๋Œ€๋กœ ๋™์ž‘ํ•˜์ง€ ์•Š๋Š” ๋ถ€๋ถ„์ด ๋ฐœ์ƒํ–ˆ๋‹ค.
๋žŒ๋‹ค ํ•ธ๋“ค๋Ÿฌ์— ์ฟผ๋ฆฌ๋ฅผ ๋„˜๊ฒจ์•ผ ํ–ˆ๋Š”๋ฐ aws-lambda ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์ด๋ฏธ ํ•ธ๋“ค๋Ÿฌ์—์„œ ๋ฐ›๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ ํƒ€์ž…๋“ค์ด ์ง€์ •๋˜์–ด์žˆ์–ด์„œ ๋กœ์ปฌ ์„œ๋ฒ„์˜ request๋กœ ๋ฐ›์€ ๊ฐ’์„ ๋„˜๊ธฐ๊ธฐ๊ฐ€ ์–ด๋ ค์›Œ ํ•ธ๋“ค๋Ÿฌ์— 3๋ฒˆ์งธ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋”ฐ๋กœ ์ถ”๊ฐ€ํ•ด์„œ ๋„˜๊ฒผ๋”๋‹ˆ ์ž˜ ๋Œ์•„๊ฐ”๋‹ค. ํ•˜์ง€๋งŒ ๋žŒ๋‹ค์— ๋„์›Œ์ง€๋ฉด 3๋ฒˆ์งธ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์•„์˜ˆ ๋ฌด์‹œํ•ด๋ฒ„๋ฆฐ๋‹ค.

๋˜ ๋žŒ๋‹ค์˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ์ค‘ event ๋ผ๋Š” ๊ณณ์— queryStringParameters ๋ผ๋Š” ์†์„ฑ์— ์ฟผ๋ฆฌ๋ฌธ์ด ๋“ค์–ด๊ฐ€๊ธฐ๋•Œ๋ฌธ์— ๋กœ์ปฌ์—์„œ ์ž„์˜๋กœ ์ € ์•ˆ์— username์„ ๋„ฃ์–ด์„œ ๋ณด๋‚ด๋ฉด ํƒ€์ž…๋•Œ๋ฌธ์— ์—†๋Š” ์†์„ฑ์„ ๊บผ๋‚ผ ์ˆ˜ ์—†๋‹ค๊ณ  ํ•˜๊ณ  ์ž„์˜๋กœ event ํƒ€์ž…์„ ๋”ฐ๋กœ ๋งŒ๋“ค์–ด ์ง€์ •ํ•˜๋ฉด ๋žŒ๋‹ค์— ๋„์›Œ์ง€๋ฉด์„œ ์ž‘๋™์ด ์•ˆ๋œ๋‹ค.

solution

const { username } = event.queryStringParameters || {};

fallback์„ ์ด์šฉํ•ด์„œ ์ฟผ๋ฆฌ๋ฅผ ๋ฐ›์•˜์„ ๋•Œ๋Š” ๊ตฌ์กฐ๋ถ„ํ•ดํ• ๋‹น์ด ๋˜๊ณ  ์—†์„ ๋•Œ๋Š” ๋นˆ๊ฐ์ฒด๋กœ ๊ตฌ์กฐ๋ถ„ํ•ดํ• ๋‹น์„ ํ•ด์„œ undefined๋ฅผ ๋„ฃ๊ฒŒ ๋œ๋‹ค.
์˜ต์…”๋„์ฒด์ด๋‹์œผ๋กœ ํ•ด๋ณด๋ ค ํ–ˆ๋Š”๋ฐ ์ฝ”๋“œ์ƒ์—์„œ๋Š” username ์ด๋ผ๋Š” ๊ฐ’์ด ์ธํ„ฐํŽ˜์ด์Šค์— ์ •์˜๋˜์–ด์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜์Œ๋ถ€ํ„ฐ ์—๋Ÿฌ๋ฅผ ๋ฑ‰์–ด๋‚ด๊ณ  lambda์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํƒ€์ž…์™ธ์— ์ž„์˜๋กœ ๋งŒ๋“  ํƒ€์ž…์œผ๋กœ event๋ฅผ ์ •์˜ํ•˜๋ฉด lambda์—์„œ ์•ˆ๋Œ์•„๊ฐ„๋‹ค.
๋‹ค๋ฅธ ์˜ต์…˜์€ ์•„์ง ๋ชป์ฐพ์•„๋ดค๋‹ค.

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentation

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions