1. HTTP
- HyperText Transfer Protocol
- HyperText => HTML(Web)
- Protocol => 하나의 컴퓨터가 다른 컴퓨터와 소통할 때(파일을 주고 받는 등) 정해진 규칙과 틀을 준수해야 원활한 소통이 가능. 여기서 정해진 규칙이 바로 'Protocol'
- 즉 'Web'에서 HTML문서 데이터를 클라이언트와 서버가 주고 받을 때 사용되는 컴퓨터들 간의 통신 규칙 및 규약

- HTTP Request(요청)과 HTTP Response(응답)으로 나뉘어져 있다.
2. HTTP Request
- client와 server
- client : 보통 요청을 하는 컴퓨터를 가리킨다.
- sever : 보통 요청을 받는 컴퓨터를 가리킨다.
- client에서 server에 요청을 보낼 때, 웹 브라우져(ex. 크롬)을 사용한다.
- client의 목적에 따라 HTTP Request는 다르게 분류되기도 한다.
ex. GET, POST, PUT/PATCH, DELETE ...
3. CRUD에 사용되는 HTTP Requset 메소드*
*CRUD
: 데이터 처리 기능으로, Create
, Update
, Read
, Delete
의 약자이다.
HTTP 메소드에 따라 처리할 수 있는 요청들이 고정된 것은 아니다. 다만, 보통은 API를 제작할 때 참고했던 REST 가이드라인을 따라 HTTP 메소드들을 사용한다.
GET
: 특정 리소스를 달라고 할 때 사용
ex. 웹 페이지 로딩할 때
POST
: 서버 측의 특정 리소스를 저장할 때 사용
ex. 회원가입 시 특정 유저 정보를 서버에 저장할 때
PUT
: 서버 측의 특정 리소스를 업데이터 할 때 사용(데이터 전부를 바꿀 때)
ex. 사용자 닉네임 변경
PATCH
: 서버 측의 특정 리소스를 업데이터 할 때 사용(데이터 부분적으로 변경할 때)
ex. 사용자 닉네임 변경
DELETE
: 서버 측의 특정 리소스를 삭제할 때 사용
ex. 유저 탈퇴
- 그 외 HTTP 메소드 참조 : https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods
4. HTTP Response
- HTTP Response :
- HTTP Request에 대하여 나올 수 있는 다양한 응답(경우)
-
응답을 보낼 때는 때에 따라 상태 코드와 함께 문자열, JSON 등을 이용하여 데이터를 함께 보내기도 한다.
ex. HTTP Request
: 전화를 거는 행동
ex. HTTP Response
: 상태에 따라 응답 분류 가능
1) 상대가 전화는 받은 상태
- 제대로 전화하고 잘 받음
- 없는 번호입니다..
- 번호가 바뀌었습니다..
- 누구세요? (잘못된 번호로 전화)
2) 상대가 전화를 받지 않은 상태
- 상대가 전화를 끊음
- 전원이 꺼져있습니다..
- 상태코드(Status Code) :
- HTTP Request에 대한 HTTP Response 상태가 어떤지 알려준다.
5. HTTP 확인해보기
크롬 기준
- 웹 페이지를 열어서 > 오른쪽 마우스 클릭 > 검사 탭 열기 > Network 클릭
- 기존 페이지 새로고침 하면, HTTP 요청 메소드, HTTP 응답 status code 등 여러가지 정보 확인 가능