๐ ๋ก๊ทธ์ธ-ํ์๊ฐ์ ๊ตฌํ ์์งค
BODYLIKE Project
์ด 5๋ช ์ด์ ๊ตฌ์ฑ๋ Team coner ( FE : 3, BE : 2 )์์
2์ฃผ๊ฐ ์ค๋ก์ง ํ์ต์ฉ์ผ๋ก bodylike๊ตฌํํ๋๋ฐ
๊ทธ ์ค ๋ก๊ทธ์ธ, ํ์๊ฐ์ ์ฐฝ / ์์ธ ํ์ด์ง ๊ตฌํ์ ๋งก์ ๊ธฐ๋ก์ ์ ์ต๋๋ค.
๋ก๊ทธ์ธ/ํ์๊ฐ์ ์ฐฝ
๊ตฌํํ ๊ธฐ๋ฅ
- ๋ก๊ทธ์ธ์ฐฝ์์ ํ์๊ฐ์ ๋ฒํผ ๋๋ฅผ์ ํ์๊ฐ์ ์ฐฝ์ผ๋ก ๋์ด๊ฐ
- ํ์๊ฐ์ ์ฐฝ/ ๋ก๊ทธ์ธ์ฐฝ์์ ์์ด๋ ์ฐฝ '@', 5๊ธ์ && ๋น๋ฐ๋ฒํธ ์ฐฝ 5๊ธ์ ์ด์ ์ ๋ ฅ์ ํ์๊ฐ์ ๋ฒํผ ํ์ฑํ (๋น๋ฐ๋ฒํธ ์๋ฌธ ์๋๋ฌธ์ ์์ ์ ์๋ฆผ์ฐฝ ๋ธ)
- ๋ก๊ทธ์ธ์ฐฝ์์ id, pw ๊ธฐ์ ํ ๋ก๊ทธ์ธ ๋ฒํผ ๋๋ฅผ ์ ์๋ฒ์ ํต์ ํ ๋ก์ปฌ ์คํ ๋ฆฌ์ง์ ํ ํฐ ๋ฐ๊ธ, ๋ฉ์ธ์ฐฝ์ผ๋ก ๋์ด๊ฐ
- ์ผ์ธก ์๋จ ๋ก๊ณ ํด๋ฆญ์ ๋ฉ์ธ์ผ๋ก ์ด๋
๋ก๊ทธ์ธ์ฐฝ / ํ์๊ฐ์ ์ฐฝ์ ๋ ์ด์์์ ๊ฑฐ์ ๋น์ทํ๋ค
ํฐ ์ฌ์ง์ด ์ผ์ชฝ์ ์์นํ๊ณ
์ธํ 2๊ฐ๊ฐ ์๋ ๊ฒ ๊น์ง!
(์ฌ์ค ์ฒ์์ ํ์๊ฐ์ ์ฐฝ์ ์ด๋ฆ ์ธํ๊น์ง ๋ง๋ค์๋ค๊ฐ ๋ฐ์ดํฐ ๋ค์ด์ค๋ ๊ฒ์ด ์๋ค๋ ๋ฐฑ์๋ ์ธก๊ณผ์ ์ํต ์ค๋ฅ๋ก ์ธํด ์์ด๋ค)
๋ก๊ทธ์ธ / ํ์๊ฐ์ ์ฐฝ์ ๋ค๋ฅธ ์ ์
์ผ์ชฝ ์ฌ์ง
๋ก๊ทธ์ธ/ํ์๊ฐ์ title
ํ์๊ฐ์ ๋ฒํผ/ ๋ก๊ทธ์ธ ๋ฒํผ
์ ๋์๋๋ฐ
๋ก๊ทธ์ธ ํ์ ๊ฐ์ ์ฐฝ ๋ ๋ค 'ํ์๊ฐ์ ํ๊ธฐ' ๋ฒํผ์ด ์์ง๋ง ๊ธฐ๋ฅ์ ๋ค๋ฅด๋ค
๋ก๊ทธ์ธ ์ฐฝ์ ํ์๊ฐ์ ๋ฒํผ์ ํ์๊ฐ์ ์ฐฝ์ผ๋ก ๊ฐ๋ ๋ฒํผ์ด๊ณ
ํ์๊ฐ์ ์ฐฝ์ ํ์๊ฐ์ ๋ฒํผ์ ์ ์ ์ ์ ๋ณด๋ฅผ ๋ฐ์ ํ ํฐ์ ๋ฐ๊ธํ๋, ์ ๋ง 'ํ์๊ฐ์ ์ ์ํ ๋ฒํผ' ์ด๋ค
๋ก๊ทธ์ธ ์ฐฝ / ํ์ ๊ฐ์ ์ ์ด ๋ ๊ฐ์ js ํ์ผ๋ก ๋ง๋ค์๊ณ (scss ์ ์ธ)
์ด login.js ํ์ผ์ ๊ฐ์ html ์์์ location์ ์จ ๋ค๋ฅธ url์ ๊ฐ์ง ์ ์๋๋ก ํ๋ค
LOGIN_DATA/ SIGNUP_DATA๋ฅผ ์์ ๋ฐ์ดํฐ๋ก ๋ง๋ค์ด ํ์ด์ง๊ฐ ๋ฐ๋๋ฉด ๊ฐ๊ฐ ๊ฐ์ฒด์ ๋ด๊ธด ๊ฐ์ ๋ณด์ด๊ฒ๋ ํ๊ณ
ํ ๋ฒํผ์ ๊ฐ๊ฐ ๋ค๋ฅธ ๊ธฐ๋ฅ์ด ๋ค์ด๊ฐ์ผ ํ๋ฏ๋ก ์ด๋ฅผ isSelectLogin ์ ๋ด์ User.js์ ๋๊ฒจ์ฃผ์๋ค
๐ User.js ๊ฐ ๋ฐ์ ํํ
title, btnText, img ๋ผ๋ ์ด๋ฆ์ผ๋ก ๋ค์ ๊ตฌ์กฐ๋ถํดํ ๋น์ ํด์ฃผ์๋ค
๋ค๋ฅธ ํ์ผ์ User.js ๋ผ๋ ํ์ผ์ธ๋ฐ html ๊ณผ ๊ฐ๊ฐ input ๊ณผ ๋ฒํผ์ด ๊ฐ์ง ๊ธฐ๋ฅ์ ๋ด์๋ค
Fetch ํจ์๋ฅผ ์จ ์๋ฒ์ ํต์ ํ๊ณ
๋ก๊ทธ์ธํ๋ ๋ฒํผ (์๋ฒ์๊ฒ Input ๊ฐ์ ๋ณด๋ด์ด ํ์ ์ฌ๋ถ๋ฅผ ํ๋จํ๊ณ ์ผ์นํ๋ค๋ฉด ํ ํฐ์ ๋ฐ๊ธํด ๋ก์ปฌ์คํ ๋ฆฌ์ง์ ๋ฃ๊ฒ ํจ)๊ณผ
ํ์๊ฐ์ ํ๋ ๋ฒํผ (์๋ฒ์๊ฒ input ๊ฐ์ ๋ณด๋ด์ด JWT๋ฅผ ์ด์ฉํด ํ ํฐ์ ๋ฐ๊ธํ๊ฒ ํจ) ์ ํ์ด์ง URL๋ง๋ค ๋ค๋ฅด๊ฒ ๋ฃ์๋ค
์ด๋ onClick {isSelectLogin ? toLogin : toSignup} ์ผ๋ก ๊ธฐ๋ฅ ๊ตฌํํ๋ค
๊ฐ์ฅ ์ด๋ ค์ ๋ ๊ฑด ๋ฐ๋ก ๋ก๊ทธ์ธ fetch ํจ์์๋๋ฐ
.then ์์ if() ๋ฌธ์ ์ด๋ค ๊ธฐ์ค์ผ๋ก ์ง์ผํ๋์ง ๋งค์ฐ ๋๊ฐํ๋ค
์ด๋ฐ์ response.message === 'login success' ๋ก ์งฐ์ผ๋ ๋ฉ์ธ์ง๋ก ํ๋จํ ๊ฒฝ์ฐ
๋ฐฑ์๋ ์ธก์์ ๋ฉ์ธ์ง ๋ฌธ๊ตฌ๋ง ๋ฐ๊พธ๋ฉด ์ค๋ฅ๊ฐ ์ฝ๊ฒ ๋ ์ ์๋ค๋ ํผ๋๋ฐฑ์ ๋ฐ์
๋๋ฒ์งธ .then ์์ response.status === 200 ๋ก ์งฐ์ผ๋
์ฒซ๋ฒ์งธ .then ์์ json ํํ๋ก ๋ณํํ ํ์, status === 200 ์ ์ฝ์ง ๋ชปํด ์๊พธ ์ค๋ฅ๊ฐ ๋ฌ๋ค
๊ทธ๋์ ์ด๋ฅผ ๋ฉํ ๋์ ๋์์ ๋ฐ์ response.status === 200 ๋ก ํ๋ณํ ํ์ json() ๊ฐ์ฒด๋ก ๋ณํํ๋ ์์ ์งฐ๋๋ฐ
์ด๋ฐ ํํ๊ฐ ๋์๋ค ๐ค
ํต์ ์ ๊ฐ๋ฅํ์ง๋ง ๋ญ๊ฐ ์ฐ์ฐํ...
๊ทธ๋์ ํ์ ๋ค์ ๋ฆฌํฉํ ๋ง์ ํ๋๋ฐ
์ด๋ ๊ฒ ์ต์ข ๋ณธ์ด ๋์๋ค
response ์ accessToken ์ด ์๋์ง ์๋์ง ์ฌ๋ถ๋ง ํ๋จํ๋ ๊ฒ!
์ฝ๋๊ฐ ํจ์ฌ ๊น๋ํด์ก๋ค
๊ทธ๋ฆฌ๊ณ ๋ก๊ทธ์ธ/ ํ์ ๊ฐ์ ์ฐฝ์ ๋ง๋ค๋ฉฐ ๋ ์๋ฌธ ํ ๊ฐ์ง
์๋ฒ์ ์ฐ๊ฒฐํ๊ธฐ ์ ์ ๋ง๋ค์๋ ๋ก๊ทธ์ธ์ฐฝ์ ๋ฐ๋์ ์ ํจ์ฑ ๊ฒ์ฌ๊ฐ ํ์ํ๋๋ฐ
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด์ ์๋ฒ์์๋ ์ ๊ท์์ ์จ์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ๋์ฑ ์น๋ฐํ๊ฒ ํ๋ค๋ ๊ฒ์ ์์๋ค
๊ทธ๋ ๋ค๋ฉด ๊ตณ์ด ํ๋ก ํธ์๋ / ๋ฐฑ์๋ ๋ ๋ค ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ํ๋ ์ด์ ๋ ๋ฌด์์ผ๊น? ๐ค
์ด๋ฅผ ์ฐ์ํ ํ์ ๋ค ๊ธฐ์ ๋ธ๋ก๊ทธ์์ ์ ์ ์์๋ค
์ถ์ฒ : https://techblog.woowahan.com/2645/
์ค์ด์๋ฉด
์ฌ์ฉ์์ ์ ๋ ฅ์ ๋ฌด์กฐ๊ฑด ๊ฒ์ฆํด์ผํ๋ค๋ ๊ฒ!
๊ทธ๋ ์ง ์์์ ๋์ ์๋ก ๊ฐ์ ๊ฐ๋ฐ์ ๊ฐ๋จํ ์์์ ๊ฐ์ง ์ฌ๋์ด 900๋ง์ ์ด์น ์ํ์ ์ฃผ๋ฌธํ๋ฉด์
์ฃผ๋ฌธ ํผ์ ๊ฒฐ์ ๊ฐ๊ฒฉ์ ํผ ์ ์ก ์ง์ ์ 9,000์์ผ๋ก ๋ฐ๊ฟ์ณค๋ค๊ณ ํ๋ค ๐
์ด ์ผ์ ์์๋ผ ๋์ ์ผ๋ง๋ ๋ง์ ์ฌ๋๋ค์ด ๊ฐ๊ฒฉ์ ์กฐ์ํด์ ์ฃผ๋ฌธํ์๊น?
๊ฐ๋ฐ์ ๊ฒฐ๊ตญ ์ฌ๋์ด ํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์
์ ํจ์ฑ ๊ด๋ จํด์ ์ธ์ ๊ฐ ์ค์๊ฐ ๋ ์ ์๋ค
๊ทธ๋์ ์ ํจ์ฑ ๊ฒ์ฆ์ ์ด์ค ์ผ์ค์ผ๋ก ๊ฑธ์ด๋์ ์ ๋๋ก ์ ๋ง ์ค์ํ ๊ฒ ๊ฐ๋ค
๐ github readme ์ฉ ์์งค
'BODYLIKE Project' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BODYLIKE Project ํ๊ณ ๋ก (2) | 2022.08.27 |
---|---|
BODYLIKE ์์ธ ํ์ด์ง ๊ตฌํ (0) | 2022.08.26 |
BODYLIKE ๋ก๊ณ ๊ด๋ จ (0) | 2022.08.24 |
๋๊ธ