Spring Boot - What is Rest API?
๐ก Rest๋?
โ
- ์น๊ณผ ๊ฐ์ ๋ถ์ฐ ํ์ดํผ๋ฏธ๋์ด ์์คํ ์์ ์ฌ์ฉํ๋ ํต์ ๋คํธ์ํฌ ์ํคํ ์ฒ
- HTTP์ URI์ ๋จ์ํ๊ณ ๊ฐ๊ฒฐํ ์ฅ์ ์ ๊ณ์นํ Network ์ํคํ ์ณ
- ์ฐธ๊ณ :
https://meetup.toast.com/posts/92
๐ก Rest๊ฐ ๋ง๋ค์ด์ง ๋ชฉ์
- ๊ตฌ์ฑ์์ ์ํธ์์ฉ์ ๊ท๋ชจ ํ์ฅ์ฑ
- ์ธํฐํ์ด์ค์ ๋ฒ์ฉ์ฑ
- ๊ตฌ์ฑ์์์ ๋ ๋ฆฝ์ ์ธ ๋ฐฐํฌ
- ์ค๊ฐ์ ๊ตฌ์ฑ์์๋ฅผ ์ด์ฉํ ์๋ต ์ง์ฐ ๊ฐ์, ๋ณด์ ๊ฐํ, ๋ ๊ฑฐ์ ์์คํ ์ธ์บก์๋ ์ด์
Rest API ์ค๊ณํ๊ธฐ
- ์์ : URI
- ํ์ : HTTP ๋ฉ์๋
- ํํ : ๋ฆฌ์์ค์ ๋ํ ํํ (HTTP Message Body)
๐ก URI ์ค๊ณ
URI๋ URL์ ํฌํจํ ๊ฐ๋
URL : ์น์์ ํ์ผ ์์น๋ฅผ ํํ -> http://localahost8080/api/book.pdf
URI : ์น์ ์๋ ์์์ ์ด๋ฆ๊ณผ ์์น๋ฅผ ์๋ณ -> http://localhost:8080/api/book/1
-
URI ๋ ๋ช ์ฌ๋ฅผ ์ฌ์ฉํ๋ฉฐ ๋์ฌ๋ฅผ ํผํด์ฃผ์. ๋์ฌ๋ฅผ ์ฐ์ง ์๊ณ HTTP ๋ฉ์๋๋ก ๋์ฒด๋ฅผ ํด์ค์ผํ๋ค.
-
๋ณต์ํ์ ์ฌ์ฉํ์.
-
์ปฌ๋ ์ ์ผ๋ก URI๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ ์ปฌ๋ ์ ์ ํ๋ฒ ๋ ๊ฐ์ผ ์ค์ฒฉํ์์ผ๋ก ์ฌ์ฉํ์ -> ์ถํ ์์ , ํ์ฅ ์ ๋ฒ๊ฑฐ๋ก์์ ์์ฐ
__์ค์ฒฉ ์ __
{
{
books: ...
},
{
stores: ...
}
}
์ค์ฒฉ ํ
{
_embedded: [
{
books:...
},
{
stores:...
},
]
}
๐ก ํ์์ค๊ณ
-
books๋ฅผ ๊ฐ๊ณ ํ์๋ฅผ ์ค๊ณํ๋ค๊ณ ํ์
-
book ๋ชฉ๋ก์ ๋ณด๊ธฐ ์ํด์๋ GET(read)๋ฅผ ์ฌ์ฉํด์ผํ๋ฉฐ, book์ ์ถ๊ฐํ๊ธฐ ์ํด์๋ POST(create)๋ฅผ ์ฌ์ฉํด์ผํ๋ค.
-
์ด๋ ๊ฒ GET, POST, PUT, DELETE๋ฅผ ์๋ง๊ฒ ๊ธฐ๋ฅ์ ๋ง์ถฐ ๋ง๋ค์ด์ค์ผ ํ๋ค.
(์์) books๋ฅผ ๊ฒ์ํ์ ํํํ ๋ ํ์ด์ง์ ์ฒ๋ฆฌํ๋ ๊ฐ์ ์ถ๊ฐํด์ฃผ์
JPA์ pageable์ ํ๋กํผํฐ๊ฐ์ ๊ทธ๋๋ก ์ฌ์ฉํ ์ ์๋ค.
GET http://localhost:8080/api/books?page=0&size=10&sort=desc
'Back-end' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
DataAccessException์ด๋? (What is DataAccessException?) (0) | 2020.08.24 |
---|