일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 고속 푸리에 변환
- 종만북
- 이분탐색
- 수학
- 컴퓨터 구조
- ICPC
- Bit
- 그리디
- Air Table
- REACT
- 다익스트라
- dp
- 백준 1753번
- CI/CD
- 접미사 배열
- BFS
- 펜윅 트리
- Cloud Pub/Sub
- 데이터 분석
- JavaScript
- Cloud Run
- 삼성SW역량테스트
- jpa
- 삼성 SW 역량테스트
- 생활코딩
- r
- 다이나믹 프로그래밍
- 우선순위 큐
- LCS
- 시뮬레이션
- Today
- Total
코딩스토리
HTTP 프로토콜 본문
HTTP란 Hyper Text Transfer Protocol의 약자로 클라이언트와 서버 사이의 데이터 교환에 사용되는 프로토콜이다.
클라이언트(사용자, 브라우저)가 서버에 요청하는 것을 요청(request), 요청에 대한 답으로 서버가 클라이언트에게 보내는 것을 응답(response)이라고 한다.
HTTP는 어플리케이션 레이어에 속한 프로토콜이다.
웹 페이지가 우리에게 보이는 과정을 간단하게 살펴보면
- 웹 브라우저가 Web 페이지의 HTML 문서를 가져오기 위해 서버로 요청(request)을 보낸다.
- Web 페이지의 파일들을 분석하여 실행해야 할 스크립트, 하위 리소스들(이미지, 비디오 등), 레이아웃 정보 등 에 해당하는 추가적인 요청들에 대한 응답(response)을 서버로부터 받는다.
- 브라우저는 완전한 문서인 Web 페이지를 표시하기 위해 위에서 받은 리소스들을 혼합한다.
프록시(Proxy)란 서버와 클라이언트 사이의 중계기로써 대리로 통신을 수행하는 것을 말한다.
Proxy란 단어 자체가 "대리"라는 뜻을 가지고 있다. 이런 Proxy 기능을 하는 서버를 Proxy 서버라고 한다.
HTTP 메시지
요청(request)
요청(request)는 위와 같이 구성된다.
Method(get, post 등) : 클라이언트가 수행하고자 하는 동작을 정희한 동사
Path : 경로
응답(response)
Status code : 상태 코드, 요청이 성공적으로 이루어졌는지와 그 이유를 나타냄. 200이 정상
HTTP 요청 메소드들
Get : 특정 리소스의 표시를 요청 (Get으로 요청하게 되면 데이터를 받기만 할 수 있다.)
즉 데이터를 읽거나 검색할 때에 주로 사용되는 메서드이다. (데이터를 수정하지 않기 때문에 안전)
정상 Status code = 200(OK)
Post : 새로운 리소스를 생성할 때 사용
Post 메서드로 요청 시 추가적인 데이터를 body에 포함하여 보낼 수 있다.
정상 Status code = 201(Created)
Put : 새로운 리소스를 생성할 때 사용
Post와 다른 점은 Put은 멱등성을 가진다. 즉 Put은 한 번 보내나 여러 번 보내나 같은 효과를 보인다.
Patch : 리소스의 부분만을 수정
Delete : 특정 리소스를 삭제
참고 사이트
developer.mozilla.org/ko/docs/Web/HTTP/Overview
developer.mozilla.org/ko/docs/Web/HTTP/Methods
'Web > JavaScript' 카테고리의 다른 글
크롤링 연습 - 백준 채점 현황으로 출석 체크 하기 (4) | 2021.03.04 |
---|---|
ES6 공부 (0) | 2021.02.25 |
5. 실행 컨텍스트와 클로저 (0) | 2021.01.19 |
4. 함수와 프로토타입 체이닝 - 2 (0) | 2021.01.15 |
4. 함수와 프로토타입 체이닝 - 1 (3) | 2021.01.11 |