๐Ÿ‘จโ€๐Ÿ’ป Seungineer's GitHub Contribution

๐Ÿงญ KAIST JUNGLE/HandTris

[HandTris] #5. .env ์ ์šฉ์ด ์•ˆ ๋  ๋•Œ.. - (์† ๋™์ž‘์œผ๋กœ ํ•˜๋Š” ์˜จ๋ผ์ธ ์›น ํ…ŒํŠธ๋ฆฌ์Šค ๊ฒŒ์ž„ ๋งŒ๋“ค๊ธฐ)

seungineer = seungwoo + engineer 2024. 7. 4. 03:08

๊ฒŒ์ž„ ๋กœ์ง์ ์ธ ๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ .env ํŒŒ์ผ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•  ์ผ์ด ์ ์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฐฑ์—”๋“œ์—์„œ URL์ด ๋ฐ”๋€๋‹ค๊ฑฐ๋‚˜ ์š”์ฒญ Interface๊ฐ€ ๋‹ฌ๋ผ์ง„๋‹ค๊ฑฐ๋‚˜ ํ•  ์ด์œ ๊ฐ€ ์ ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— .env ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋‹ค. ๊ทธ๋Ÿฌ๋‹ค๊ฐ€ ๊ฒŒ์ž„ ๋กœ๋น„, ๋งˆ์ดํŽ˜์ด์ง€ ๋“ฑ์„ ๊ฐœ๋ฐœํ•˜๋ฉด์„œ ๋ฐฑ์—”๋“œ Interface๊ฐ€ ๋ฐ”๋€Œ๊ฑฐ๋‚˜  ์š”์ฒญ ์ฃผ์†Œ๊ฐ€ ๋‹ฌ๋ผ์ง€๋Š” ๋“ฑ ์ด๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žฆ์•„์ ธ .env ํŒŒ์ผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒŒ ๋‚ซ๊ฒ ๋‹ค ์ƒ๊ฐ์ด ๋“ค์–ด ์ ์šฉํ•˜์˜€๋‹ค.

๐Ÿ› ๋ถ„๋ช…ํžˆ .env์—์„œ ์ž˜ ๊ฐ€์ ธ์™”๋Š”๋ฐ, undefined?

...
const BASE_URL = process.env.NEXT_PUBLIC_BASE_URL;
export const fetchRooms = async () => {
    const data = await fetchWithAuth(`${BASE_URL}/games`);
    return data;
};
...

์œ„ ์ฝ”๋“œ์ฒ˜๋Ÿผ .env ํŒŒ์ผ์„ ์ž˜ ๊ฐ€์ ธ์™”๋‹ค. ๊ทธ๋Ÿฐ๋ฐ, BASE_URL์ด undefined๋กœ ๋‚˜์™”๋‹ค. 

undefined/games ?..

 

1๏ธโƒฃ ์‹œ๋„ - BASE_URL ์ž๋ฆฌ์— .env์—์„œ ํ• ๋‹นํ•œ URL์„ ํ•˜๋“œ ์ฝ”๋”ฉํ•˜์—ฌ fetchWithAuth() ๋ฉ”์จ๋“œ์—์„œ undefined๋กœ ๋ฐ”๊พธ์–ด ๋ฒ„๋ฆฌ๋Š” ๊ฒƒ์ธ์ง€ ํ™•์ธํ•˜๊ธฐ

...
// const BASE_URL = process.env.NEXT_PUBLIC_BASE_URL;
export const fetchRooms = async () => {
    const data = await fetchWithAuth("https://api.~~~.shop/games");
    return data;
};
...

์ด๋ ‡๊ฒŒ ๋ฐ”๊พธ์–ด๋ณด๋‹ˆ ์•Œ๋งž์€ ์ฃผ์†Œ๋กœ ์ž˜ ์—ฐ๊ฒฐ๋˜์—ˆ๋‹ค..

2๏ธโƒฃ ์‹œ๋„ - process.env.NEXT_PUBLIC_BASE_URL ์ด ์ž‘๋™ํ•˜์ง€ ์•Š์œผ๋ฉด, .env์—์„œ URL์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์œผ๋‹ˆ .env ๊ฐ€์ ธ์˜ค๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ํ•˜๊ธฐ

dotenv install

dotenv ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์—ฌ๋Ÿฌ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ๋‹ฌ๋ผ์งˆ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•œ๋‹ค. ๋‚˜๋Š” ํ•œ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ๊ฐ€์ ธ์™€๋‹ฌ๋ผ๊ณ  ํ•˜๋Š” ๊ฒƒ์ด๋‹ˆ ์ž˜ ๋˜๊ฒ ์ง€ ํ•˜๋Š” ์•ˆ์ผํ•œ ์ƒ๊ฐ์œผ๋กœ dotenv๋ฅผ ์„ค์น˜ํ•˜์˜€๋‹ค.

next.config.mjs ํŒŒ์ผ๋„ ์ˆ˜์ •ํ•˜๊ณ , ๋‹ค์‹œ ์ปดํŒŒ์ผํ•˜์˜€์œผ๋‚˜ ์‹คํŒจ!

3๏ธโƒฃ '์™œ ์•ˆ ๋˜์ง€?' ๊ณ ๋ฏผํ•˜๋‹ค๊ฐ€ ์šฐ์—ฐํžˆ ๋ฐœ๊ฒฌ..

.env.local ํŒŒ์ผ์ด src ํด๋” ๋‚ด์— ์žˆ์—ˆ๋‹ค

'env ๋ฌธ์ œ๋งŒ ํ•ด๊ฒฐํ•˜๊ณ  ๊ธฐ์ˆ™์‚ฌ๋กœ ๊ฐ€์•ผ๊ฒ ๋‹ค' ์ƒ๊ฐํ•˜๊ณ  ์ž๋ฆฌ์— ์•‰์ž๋งˆ์ž ํŒŒ์ผ ํŠธ๋ฆฌ๊ฐ€ ๋ณด์˜€๋‹ค. '.env.local'๋งŒ ๋กœ๊ณ ๊ฐ€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ ๋ ค ๋ณด์˜€๋Š”๋ฐ, src ํด๋” ๋‚ด์— ์œ„์น˜ํ•˜๊ณ  ์žˆ์—ˆ๋˜ ๊ฒƒ์ด๋‹ค. ํŒŒ์ผ ํŠธ๋ฆฌ ๋ฐ–์œผ๋กœ .env ํŒŒ์ผ์„ ๋นผ์ฃผ๋‹ˆ ๋‹น์—ฐํ•˜๊ฒŒ๋„ ์ •์ƒ์ ์œผ๋กœ ์ฝ์–ด์ ธ ์™”๋‹ค(dotenv๋„ ํ•„์š” ์—†์—ˆ๋‹ค).


์–ด์ฒ˜๊ตฌ๋‹ˆ์—†๋Š” ์›์ธ์ด์—ˆ๊ณ , ๊ทธ ๋ˆ„๊ตฌ๋„ ํ•˜์ง€ ์•Š์„ ์‹ค์ˆ˜ ๊ฐ™์ง€๋งŒ ๋ธ”๋กœ๊ทธ์— ์ž‘์„ฑํ•˜๋Š” ์ด์œ ๋Š” ๊ธฐ์–ตํ•˜๊ธฐ ์œ„ํ•ด์„œ!

  1. .env ํŒŒ์ผ์„ ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ์— ์ƒ์„ฑํ•˜๋ฉฐ ์•ˆ ์จ๋„ ๋  ๊ฒƒ ๊ฐ™๋‹ค๊ณ  ๋ฐฉ์น˜ํ–ˆ์„ ๋•Œ, ๊ทธ๋•Œ ์˜ฌ๋ฐ”๋ฅธ ์œ„์น˜์— ๋„ฃ์–ด๋’€์–ด์•ผ ํ–ˆ๋‹ค.๐Ÿ˜… ์ด์ œ ์–ด๋–ค ํŒŒ์ผ์ด๋“ , ์ฝ”๋“œ๋“  ๊ฐ€๋ณ๊ฒŒ ์ƒ๊ฐํ•˜๊ณ  ๋„˜์–ด๊ฐ€์ง€ ๋ง์ž. ๋‚˜์ค‘์— ๋” ๋งŽ์€ ์‹œ๊ฐ„์„ ์Ÿ๊ฒŒ ๋  ์ˆ˜๋„ ์žˆ๋‹ค..
  2. ๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ด€๋ จ ๊ฒฝํ—˜์„ ๋” ๋งŽ์ด ํ•˜๊ณ , ์‹ค๋ ฅ์„ ๋” ๋งŽ์ด ๊ฐˆ๊ณ ๋‹ฆ์•„์•ผ ํ•œ๋‹ค. ์ ๊ทน์ ์œผ๋กœ ํ•ด๋‚ด์ž!

 

๋‚˜๋งŒ๋ฌด ์ตœ์ข… ๋ฐœํ‘œ ํ›„์— ๋‚˜๋งŒ๋ฌด ๋ ˆํฌ๋ฅผ ๋‹ค์‹œ ๋ณผ ์ผ์ด ์—†์„ ์ˆ˜๋„ ์žˆ๋‹ค. ๋‚˜๋งŒ๋ฌด ํ•˜๋Š” ์‹œ๊ฐ„์ผ ๋•Œ์ธ ์ง€๊ธˆ, ๋” ๋งŽ์ด ๋“ค์—ฌ๋‹ค๋ณด์ž. ๊ฐˆ ๊ธธ์ด ๋ฉ€๋‹ค.

๋‚ด์ผ๋„ ๋น ์ดํŒ….

์ตœ์ข… ๋ฐœํ‘œ D-8

 

 

'๐Ÿงญ KAIST JUNGLE > HandTris' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[HandTris] #7. ์ƒ๋Œ€ ํ™”๋ฉด์— ๋ธ”๋Ÿญ ์ž”์ƒ์ด ๋‚จ๋Š” ์ด์Šˆ ํ•ด๊ฒฐ - (์† ๋™์ž‘์œผ๋กœ ํ•˜๋Š” ์˜จ๋ผ์ธ ์›น ํ…ŒํŠธ๋ฆฌ์Šค ๊ฒŒ์ž„ ๋งŒ๋“ค๊ธฐ)  (0) 2024.07.12
[HandTris] #6. Failed to send message to ExecutorSubscribableChannel[clientInboundChannel] - (์† ๋™์ž‘์œผ๋กœ ํ•˜๋Š” ์˜จ๋ผ์ธ ์›น ํ…ŒํŠธ๋ฆฌ์Šค ๊ฒŒ์ž„ ๋งŒ๋“ค๊ธฐ)  (0) 2024.07.08
[HandTris] #4. ์›น์บ  ํ™”๋ฉด์„ ๊ฐ€๋ ค ๋ณด์ž - (์† ๋™์ž‘์œผ๋กœ ํ•˜๋Š” ์˜จ๋ผ์ธ ์›น ํ…ŒํŠธ๋ฆฌ์Šค ๊ฒŒ์ž„ ๋งŒ๋“ค๊ธฐ)  (0) 2024.06.30
[HandTris] #3. TypeError: Cannot read properties of undefined - (์† ๋™์ž‘์œผ๋กœ ํ•˜๋Š” ์˜จ๋ผ์ธ ์›น ํ…ŒํŠธ๋ฆฌ์Šค ๊ฒŒ์ž„ ๋งŒ๋“ค๊ธฐ)  (0) 2024.06.24
[HandTris] #2. ํ”„๋กœํ† ํƒ€์ž… ํ†ต์‹  ํ…Œ์ŠคํŠธ - (์† ๋™์ž‘์œผ๋กœ ํ•˜๋Š” ์˜จ๋ผ์ธ ์›น ํ…ŒํŠธ๋ฆฌ์Šค ๊ฒŒ์ž„ ๋งŒ๋“ค๊ธฐ)  (0) 2024.06.21