์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

GraphQL ์™„์ „์ •๋ณต (ํ‚ค์˜ค์Šคํฌ๋ฅผ ๋งŒ๋“ค๋ฉฐ ๋ฐฐ์šฐ๋Š” ํ’€์Šคํƒ ๊ณผ์ •) - [2024 ๋ถ€๋ถ„ ๋ฆฌ๋‰ด์–ผ]

์ฐจ์„ธ๋Œ€ API ์ œ์–ด ๊ธฐ์ˆ ์ธ GraphQL์˜ ๊ธฐ๋ณธ๊ณผ ๊ณ ๊ธ‰ ์‚ฌ์šฉ๋ฒ• ๊ทธ๋ฆฌ๊ณ  GraphQL๋กœ ๋งŒ๋“ค์–ด ๊ฐ€๋Š” ๊ฐ€์ƒ์˜ ํ‚ค์˜ค์Šคํฌ ์„œ๋น„์Šค๋ฅผ ํ†ตํ•ด์„œ ์‹ค์ œ ํ”„๋กœ์ ํŠธ ๊ฒฝํ—˜์„ ํ•™์Šตํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ฐ•์ขŒ๋Š” 2024๋…„ 2์›” ๊ธฐ์ค€ ๊ฐ€์žฅ ์ตœ์‹  ๋ฒ„์ „์ธ apollo-server v4๋กœ ๊ฐ•์ขŒ๋ฅผ ๋ถ€๋ถ„ ์—…๋ฐ์ดํŠธ ํ–ˆ์Šต๋‹ˆ๋‹ค.

(4.5) ์ˆ˜๊ฐ•ํ‰ 6๊ฐœ

์ˆ˜๊ฐ•์ƒ 221๋ช…

๋‚œ์ด๋„ ์ดˆ๊ธ‰

์ˆ˜๊ฐ•๊ธฐํ•œ ๋ฌด์ œํ•œ

์ƒˆ์†Œ์‹

3 ๊ฐœ

  • Indie Coder๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€

    ์•ˆ๋…•ํ•˜์„ธ์š”. ์ด๋ฒˆ์— GraphQL ์™„์ „์ •๋ณต (ํ‚ค์˜ค์Šคํฌ๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉฐ ๋ฐฐ์šฐ๋Š” ํ’€์Šคํƒ ๊ณผ์ •)์„ ๋ถ€๋ถ„ ๋ฆฌ๋‰ด์–ผ ํ•˜๊ฒŒ ๋˜์„œ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค.

    ์ฃผ์š” ์—…๋ฐ์ดํŠธ ๋‚ด์šฉ์€ ์„œ๋ฒ„ ๊ตฌํ˜„ ๋ฉ”์ธ ํ”„๋ ˆ์ž„์›Œํฌ์ธ apollo-server๋ฅผ v3์—์„œ apollo-server v4๋กœ ์—…๋ฐ์ดํŠธ ํ–ˆ์Šต๋‹ˆ๋‹ค.

    ์ด๋ฒˆ ๋ฆฌ๋‰ด์–ผ์„ ๊ธฐ๋…์œผ๋กœ ํ•ด์„œ ํ• ์ธ๋„ ํ•˜๊ณ  ์žˆ์œผ๋‹ˆ Graphql์„ ์ด์šฉํ•ด ์„œ๋น„์Šค๋ฅผ ๊ตฌํ˜„ํ•ด ๋ณด๊ธธ ์›ํ•˜๋Š” ๋งŽ์€ ๋ถ„๋“ค์˜ ๊ด€์‹ฌ ๋ถ€ํƒ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

    ๊ทธ๋ฆฌ๊ณ  ๊ธฐ์กด์— ์ด๋ฏธ ๊ฐ•์ขŒ๋ฅผ ๋“ฃ๊ณ  ์žˆ๋Š” ๋ถ„๋“ค์„ ์œ„ํ•ด์„œ ๋งˆ์ง€๋ง‰ ์ฑ•ํ„ฐ์— apollo-server v4 ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ฑ•ํ„ฐ๋„ ๋”ฐ๋กœ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค.

    ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

    0
  • Indie Coder๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€

    ์•ˆ๋…•ํ•˜์„ธ์š” hollo coding ์ž…๋‹ˆ๋‹ค.

    ์ด๋ฒˆ์— Node.Js ๋ฐฑ์—”๋“œ ๊ฐ•์ขŒ๋ฅผ ์˜คํ”ˆํ•˜๊ฒŒ ๋˜์–ด ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค.

    Express ๋Œ€๋น„ ๋น ๋ฅธ ์†๋„๋ฅผ ์ž๋ž‘ํ•˜๋Š” Fastify ํ”„๋ ˆ์ž„์›Œํฌ์™€ ํŽธ๋ฆฌํ•œ ORM Prisma

    ๊ทธ๋ฆฌ๊ณ  Typescript๋ฅผ ์ด์šฉํ•ด ๊ฐœ๋ฐœํ•˜๋Š” Node.Js ๋ฐฑ์—”๋“œ ๊ณผ์ •์ด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ์ „ ์ œ๊ฐ€ Svelte๋กœ ๋งŒ๋“ค์—ˆ๋˜ Slog์˜ REST API ์— ๋Œ€ํ•œ ๋‚ด์šฉ์ด๊ธฐ๋„ ํ•˜๋‹ˆ Svelte REST-API ์ฝ”์Šค๋ฅผ ํ•™์Šต ํ•˜์…จ๋˜ ๋ถ„๋“ค์ด ํ•œ๋ฒˆ ๋“ค์–ด๋ณด์…”๋„ ์ข‹์€ ๊ฒฝํ—˜์ด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

    ๊ทธ๋Ÿผ ๊ฐ•์ขŒ์—์„œ ๋ต™๊ฒ ์Šต๋‹ˆ๋‹ค.

    ๐Ÿ’ป ์ฐจ์„ธ๋Œ€ Node.js ๋ฐฑ์—”๋“œ ์„œ๋ฒ„ ๊ฐœ๋ฐœ: https://inf.run/mpCv8

    image

    0
  • Indie Coder๋‹˜์˜ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€

    ์ด๋ฒˆ์— svelte์™€ REST API๋ฅผ ์ด์šฉํ•œ ์„œ๋น„์Šค ๊ฐœ๋ฐœ ๊ด€๋ จ ๊ฐ•์ขŒ๋ฅผ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฐ•์ขŒ๋Š” ๋ฌด๋ฃŒ๋กœ ์˜คํ”ˆํ•œ ๊ฐ•์ขŒ๋กœ ์ž‘๋…„์— ์ง‘ํ•„ํ•œ โ€˜์Šค๋ฒจํŠธ๋กœ ์‹œ์ž‘ํ•˜๋Š” ์›นํ”„๋ŸฐํŠธโ€™ ํ›„๋ฐ˜๋ถ€์— ๋‚˜์™”๋˜ SLOG ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ์— ๋Œ€ํ•œ AS ์ด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

    ํ”„๋ŸฐํŠธ์—”๋“œ ํ”„๋ ˆ์ž„์›Œํฌ์ธ svelte๋ฅผ ์ด์šฉํ•ด์„œ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“ค๋•Œ ๊ฐ€์žฅ ๋งŽ์ด ์ ‘ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด ์•„๋งˆ๋„ REST API์™€ ํ†ต์‹ ํ•˜๋Š” ๋ถ€๋ถ„์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๋Š” ๋ฐฉ๋ฒ•, JWT ํ† ํฐ ์ธ์ฆ, ๋ฌดํ•œ์Šคํฌ๋กค ํŽ˜์ด์ง€๋„ค์ด์…˜ ๋“ฑ ์›น์•ฑ ๊ฐœ๋ฐœ์— ์žˆ์–ด์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋Š” ๋‚ด์šฉ๋“ค์„ ์ค‘์‹ฌ์œผ๋กœ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค.

    ์ œ๊ฐ€ ์ •๋ง ์ข‹์•„ํ•˜๋Š” svelte๊ฐ€ ์กฐ๊ธˆ๋” ๋งŽ์€ ๋ถ„๋“ค์—๊ฒŒ ์‚ฌ๋ž‘๋ฐ›๊ธธ ๋ฐ”๋ผ๋Š” ๋งˆ์Œ์—์„œ ๋งŒ๋“  ๊ฐ•์ขŒ์ด๊ธฐ๋„ ํ•˜๋‹ˆ ๋งŽ์€ ๊ด€์‹ฌ ๋ถ€ํƒ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

    ๊ฐ•์ขŒ ๋งํฌ : https://inf.run/7Na4

    1

โ‚ฉ55,000