💪 HTTP 를 공부한 후에 대답할 수 있어야 하는 질문들
- HTTP란?
- Request? Response?
- headers와 body의 역할?
- Method란?
- Status-code 들은 무엇이 있을까요?
- RESTful HTTP API는 무엇일까요?
- 올바른 end-point 주소는 어떻게 작성할까요?
/login
, /news
http://finance.naver.com/marketindex
POST
, GET
등등웹상에서 사용되는 여러 리소스를 HTTP URL 로 표현하고 그 리소스에 대한 행위를 HTTP Method 로 정의하는 방식
GET
과 POST
만 사용한다.PUT
과 Delete
등도 사용하는 곳도 있지만 그냥 GET
과 POST
만 사용하는 것이 단순하기 때문에 GET
과 POST
만 사용하는 추세예를 들어 삼성전자 주식 정보를 받기 위한 HTTP 요청:
유저의 보유 주식 종목들을 DB 에 저장하는 HTTP 요청:
HTTP POST https://api.trueshort.com/user/portfolio
{
"user_id" : 1,
"stocks": [
"005930",
"298730",
"378900"
]
}
self- descriptiveness
이다.HTTP GET https://api.trueshort.com/stock/005930
요청의 경우, 문서나 주석이 없어도 https://api.trueshort.com 라는 API 에서 삼성전자 주식에 관한 정보를 HTTP 요청을 통해 받아오는 구나 라는 해석이 가능하다./
는 계층 관계를 나타낼 때 사용된다.https://api.trueshort.com/kospi/stock/005930
라는 구조라면 KOSPI 에 속해있는 주식(stock) 중 삼성전자(005930)를 나타내는 것이다.https://api.shopping.com/books/novel/stephenking
이라는 구조라면 책들 중 소설 그리고 소설 중 Stephen King 의 소설을 나타내는 구조이다._
는 주로 포함하지 않고, 영어 대문자보다 소문자를 쓴다. 너무 긴 단어는 사용하지 않는다. 가독성을 높이기 위해서이다./books/novel/stephenking
이라고 하지 /books/novel/get-stephenking
이라고 하지 않는다.GET
, POST
같은 HTTP Method 를 통해 표현하기 때문이다.