๋ฉด์ ๊ด๋๊ป์ ๋ง์ํ์๊ธธ, ์๊ธฐ๊ฐ ์ฌ์ฉํ ์คํ์ ๋ํด์๋ ๋ง๋ก ์ค๋ช
ํ ์ ์์ด์ผ ํฉ๋๋ค.
๋ง๋ค. ๋๋ ์ต์ํ ๋ด๊ฐ ์ฌ์ฉํ ๊ธฐ์ , ์ํคํ
์ณ์ ๋ํด์๋ ์ค๋ช
ํ ์ค ์๋๊ฒ ๋ง๋ค๊ณ ์๊ฐํ๋ค. ํ์ง๋ง ๋๋ต์ ์ ๋๋ก ํ์ง ๋ชปํ๋ค. ํ๋ฌ ๋จ์๋๋ฐ ํ๋ฌ ๋ค์ ๋ด๊ฒ ๋ฌด์์ด ๋จ์ ์์๊น๋ผ๋ ์๊ฐ์ด ๋ค๊ธฐ ์์ํ๋ค.
๊ทธ๋๋ ์ค๋ ๋ฉด์ ์ ํตํด ๋ด๊ฐ ์ด๋ค ๋ถ๋ถ์ ์ฑ์์ผ ๋๋์ง ์กฐ๊ธ์ด๋๋ง ์ฟ๋ณธ ๊ฒ ๊ฐ๋ค ๊ทธ๋ฆฌ๊ณ ๋ง์ ๋๊ธฐ๋ถ์ฌ๊ฐ ๋์๋ค. ๊ณ์ํด์ ์์์ง๋ ์๋ก์ด ๊ธฐ์ ๊ณผ ํ๋ก์ ํธ์ ์๋ก์ด ๊ธฐ๋ฅ์ ์ถ๊ฐํจ์ ์์ด. ์กฐ๊ธ์ฉ ์ง์ณ๊ฐ๋๋ฐ ๋ฉด์ ์ ์ค๋นํ๋ฉด์ ๋ด๊ฐ ๋ง๋ ๊ธฐ๋ฅ์ ๋ณด๋ฉด์ ๋ด๊ฐ ๋ง๋ฅ ๋์ง๋ ์์๊ตฌ๋๋ผ๋ ์๊ฐ์ด ๋ค์๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฉด์ ์ ๋ณด๊ณ ๋์ ๋ด๊ฐ ๊ฐ๋
์ ์ธ ๋ถ๋ถ์ ๋ํด์๋ ์์ง ์ ๋๋ก ์๊ณ ์๋๊ฒ ์ผ๋ง ์๊ตฌ๋๋ผ๊ณ ๋ถ์กฑํ ๋ถ๋ถ๋ ์ ์ ์์๋ค.
์๋ฒ๋ฆฌ์ค๋ ๊ฐ๋ฐ์๊ฐ ์๋ฒ๋ฅผ ๊ด๋ฆฌํ ํ์ ์์ด ์๋ฒ๋ฅผ ์ ๊ณตํด์ฃผ๋ ํด๋ผ์ฐ๋ ์ ๊ณต ์ ์ฒด๊ฐ ์๋ฒ ์ธํ๋ผ, ์ ์ง๋ณด์, ์ค์ผ์ผ๋ง์ ๋ํ ์๋น์ค๋ฅผ ์ง์ํด์ฃผ๋ ๊ฐ๋ฐ ๋ชจ๋ธ์ด๋ค.
์ด๋ฏธ์ง๋, ์๋น์ค ์ด์์ ํ์ํ ์๋ฒ ํ๋ก๊ทธ๋จ, ์์ค์ฝ๋ ๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์ปดํ์ผ๋ ์คํํ์ผ์ ๋ฌถ์ด๋์ ๊ฒ์ ์ด๋ฏธ์ง๋ผ๊ณ ํ๋ค. ์ฆ ์๋น์ค๋ฅผ ์ด์ํ๊ธฐ ์ํ ๋ชจ๋ ํ์ผ์ ๋ด์๋ ํ์ผ์ด๋ผ๊ณ ํ ์ ์๋ค. ์ด๋ ๊ธฐ ๋๋ฌธ์ ์ด๋ฏธ์ง๋ docker ์ ์ฅ์์ ์ฌ๋ ค๋๊ณ pull, pushํ ์ ์๋ค.
์ปจํ
์ด๋๋, ์ด๋ฏธ์ง๋ฅผ ์คํํ ์ํ๋ก ์์ฉํ๋ก๊ทธ๋จ๊ณผ ์ข
์์ฑ์ ๊ฐ๋ ๋ชจ๋ ์์ฉํ๋ก๊ทธ๋จ๋ค์ ์ปจํ
์ด๋์ ๊ฐ์ ๋
๋ฆผ๋ ๊ณต๊ฐ์์ ํ๋ก์ธ์ค๋ฅผ ๋์์ํค๋ ๊ธฐ์ ์ด๋ค. ์ด๋ ๊ธฐ ๋๋ฌธ์ ์ปจํ
์ด๋๋ ๋ํ๋์ ์ปดํจํฐ๋ผ๊ณ ๋ ๋ณผ ์ ์๋ค.
Spring Boot์์ ์ ๊ณตํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ธ Spring Security๋ฅผ ์ฌ์ฉ์์ ํ ํฐ ๊ฐ์ ๋น๊ตํ์ฌ ๊ถํ์ ํ์ธํ๊ณ ์ ํจํ ์ฌ์ฉ์์ธ์ง ํ์ธํ๋๋ฐ ์ฌ์ฉํ๊ณ ์์ต๋๋ค. ์ถ๊ฐ๋ก Spring Security์์ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํด์ฃผ๋ Session๋ฐฉ์์ ์ฌ์ฉํ๋ ๊ฒ์ ์๋๊ณ Jwt Token ๋ฐฉ์์ ์ฌ์ฉํ์ต๋๋ค. ํ๋ก์ ํธ์์ Jwt ํ ํฐ ๋ฐฉ์์ ์ฑํํ ์ด์ ๋ก๋ ์ถํ์ ์๋ฒ์์ ์ค์ผ์ผ๋ง์ด ๋ฐ์ํ์ ๋ ์ธ์ ๋ฐฉ์์ ์ฌ์ฉํ ๊ฒฝ์ฐ ๋ชจ๋ ์๋ฒ์ ์ ์ session ์ ๋ณด๋ฅผ ๋ณด๊ดํด์ผ ํ๋ค๋ ๋ถํฉ๋ฆฌํ ์ ๊ณผ ํ์ฅ์ฑ์ด ์์ด Jwt ํ ํฐ ๋ฐฉ์์ ์ ์ ํ์ต๋๋ค.
REST(Representational State Transfer)์ ์ฝ์๋ก ์์์ ์ด๋ฆ์ผ๋ก ๊ตฌ๋ถํ์ฌ ํด๋น ์์์ ์ํ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋ชจ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
์ฆ REST๋
1. HTTP URL์ ํตํด ์์์ ๋ช
์ํ๊ณ
2. HTTP Method๋ฅผ ํตํด URL ์์์ ์ํ(CRUD)๋ฅผ ๋ช
์ํ๋ ๊ฒ์
๋๋ค.
๊ทธ๋ฆฌ๊ณ REST API๋ REST์ ์๋ฆฌ๋ฅผ ๋ฐ๋ฅด๋ API๋ฅผ ์๋ฏธํฉ๋๋ค.
์ฆ REST API๋ API๋ฅผ ๋ง๋๋ ์ํคํ
์ณ๋ผ๊ณ ํ ์ ์๋ค.
์ถ๊ฐ์ ์ผ๋ก ์ฝ์ด๋ณด๊ณ ์ ๋ฆฌํ์
์ด๊ฑฐ๋ ๋ด๊ฐ ๊ถ๊ธํ๊ฑฐ ์ถ๊ฐ์ ์ผ๋ก ์ฝ์ด๋ณด๊ณ ์ ๋ฆฌํ์.
๋์ปค ์ด๋ฏธ์ง์ ์ปจํ
์ด๋ : https://hoon93.tistory.com/48
์ธ์
๊ณผ JWT Token์ ์ฐจ์ด์ : https://fierycoding.tistory.com/69
REST API ๋? : https://khj93.tistory.com/entry/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-REST-API%EB%9E%80-REST-RESTful%EC%9D%B4%EB%9E%80
Sping MVC๋? : https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=kksssii&logNo=220658615169