HTTP 프로토콜의 요청 메시지는 요청 방식에 따라 메시지의 구조/형태가 조금 다릅니다.
HTTP 프로토콜의 요청 메시지 크게 Request Line(요청 대상을 가리키는 문자)에 쿼리 파라미터를 작성하여 데이터를 요청하는 방식과 메시지의 Body 부분에 쿼리 파라미터를 작성하여 데이터를 요청하는 방식이 있습니다.
📌 쿼리 파라미터?
- 쿼리 파라미터는 URI의 구성 중 하나입니다.
- key=value의 형태를 가지고 있습니다.
- ?로 시작하며, &로 기능을 추가합니다.
-네이버 웹툰 마음의 소리 1화의 URI-
https://comic.naver.com/webtoon/detail?titleId=20853&no=1&weekday=tue
위의 URI에서 쿼리 파라미터는 "?titleId=20853&no=1&weekday=tue" 입니다.
쿼리 파라미터를 통한 데이터 요청은 GET 요청 방식(메소드)에서 사용하는 방식이며, 쿼리 파라미터를 Request Line에 작성합니다.
ex) 글을 읽어 올 때 사용
메시지의 Body를 통한 데이터 요청은 POST, PUT, PATCH 요청방식(메소드)에서 사용하는 방식이며, 쿼리 파라미터를 Body를 부분에 작성합니다.
ex) 글을 작성, 수정할 때 사용
HTTP 프로토콜의 요청 메시지를 서버가 전달받으면 그에 맞는 응답 데이터를 전송해 줍니다.
응답 데이터의 형태는 크게 XML과 JSON이 존재합니다.
(옛날에는 XML 형태의 데이터를 전달 받았지만, 요즘은 JSON 형태의 데이터를 전달 받고 있습니다.)
✅ XML 형태
<students> <student> <firstName>철수</firstName> <lastName>김</lastName> </student> <student> <firstName>짱구</firstName> <lastName>신</lastName> </student> </students>
✅ JSON 형태
JSON 형태는 XML 형태보다 간결하다.
{"students":[ { "firstName":"철수", "lastName":"김" }, { "firstName":"짱구", "lastName":"신" }, ]}