Skip to main content

@api ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ

@api ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ๋ฅผ Model์ด๋‚˜ Frame ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ์— ๋ถ™์—ฌ REST API ์—”๋“œํฌ์ธํŠธ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.๊ธฐ๋ณธ ์‚ฌ์šฉ:
์ž๋™ ์ƒ์„ฑ๋˜๋Š” ์—”๋“œํฌ์ธํŠธ:
httpMethod (ํ•„์ˆ˜):
guards (์ธ์ฆ/๊ถŒํ•œ):
๊ณต๊ฐœ API ๋งŒ๋“ค๊ธฐ: guards ์˜ต์…˜์„ ์ƒ๋žตํ•˜๋ฉด ์ธ์ฆ ์—†์ด ๋ˆ„๊ตฌ๋‚˜ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐœ API๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ๋กœ๊ทธ์ธ์ด๋‚˜ ๊ถŒํ•œ ์ฒดํฌ๊ฐ€ ํ•„์š” ์—†๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉํ•˜์„ธ์š”.
path (์ปค์Šคํ…€ ๊ฒฝ๋กœ):
์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ (๋‹จ์ผ ๊ฐ’):
์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ (๊ฐ์ฒด):
๋‹จ์ผ ๊ฐ์ฒด:
๋‹ค์ค‘ ํŒŒ๋ผ๋ฏธํ„ฐ:
@upload ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ๋Š” @api ์—†์ด ๋…๋ฆฝ์ ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.๋‹จ์ผ ํŒŒ์ผ:
๋‹ค์ค‘ ํŒŒ์ผ:
BadRequestException (400):
UnauthorizedException (401):
๊ถŒํ•œ ์˜ค๋ฅ˜ (403):
NotFoundException (404):

Context์™€ ์„ธ์…˜

userId/ip/userAgent๋Š” Context์˜ ์ตœ์ƒ์œ„ ์†์„ฑ์ด ์•„๋‹™๋‹ˆ๋‹ค. ๊ฐ๊ฐ context.user?.id, context.request.ip, context.headers["user-agent"]๋กœ ์ ‘๊ทผํ•˜์„ธ์š”.
์„ธ์…˜ ์„ค์ •:
์„ธ์…˜ ์ €์žฅ:
์„ธ์…˜ ์กฐํšŒ:
์„ธ์…˜ ์‚ญ์ œ:

์ธ์ฆ๊ณผ ๊ถŒํ•œ

Guard ์„ค์ •:
Guard ์‚ฌ์šฉ:

์‘๋‹ต ํ˜•์‹

๊ธฐ๋ณธ ์‘๋‹ต:
์ปค์Šคํ…€ ์‘๋‹ต:
ํ—ค๋” ์„ค์ •:
ListResult ์‚ฌ์šฉ:

ํ”„๋ก ํŠธ์—”๋“œ ์—ฐ๋™

์„œ๋น„์Šค ํŒŒ์ผ ์ž๋™ ์ƒ์„ฑ:Model ํŒŒ์ผ์ด ๋ณ€๊ฒฝ๋˜๋ฉด {entity}.service.ts๊ฐ€ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
React์—์„œ ์‚ฌ์šฉ:
TanStack Query hook ์‚ฌ์šฉ:

๊ด€๋ จ ๋ฌธ์„œ