HTTP Protocol

kkjj·2022년 5월 8일
0

HTTP 프로토콜 이란?

  • HTTP(Hype Text Transfer Protocol)로 RFC 2616에서 규정된 Web에서 데이터를 주고 받는(방식) 프로토콜
  • 이름에는 하이퍼텍스트 전송용 프로토콜로 정의되어 있지만 실제로는 HTML,XML,JSON,Image,Voice,Video,Javascript,PDF 등 다양한 컴퓨터에서 다룰 수있는 것은 모두 전송할수있습니다. --> 이런걸 전송하는 프로토콜 규약이라고 생각하면 된다.
  • HTTP는 TCP를 기반으로 한 REST의 특징을 모두 구현하고 있는 Web기반의 프로토콜

HTTP는 메시지를 주고 (Request) 받는(Response)형태의 통신 방법 입니다.

클라이언트 는 서버에게 통신하고 일정시간 동안 응답 요청이 안오면 취소하게된다.
Ex) 특정한 웹사이트에 접근할려고 하면 사람이 몰리면 페이지가 열리지 않는다 404Eror 서버에 응답을 받지 못해서 끊어지는 현상.

HTTP의 요청을 특정하는 Method는 8가지가 있습니다.

REST를 구현하기 위한 인터페이스이니 알아둬야 한다.

의미CRUD멱등성안정성PathVariableQuery ParameterDataBody
GET리소스취득ROOOOX
POST리소스생성,추가CXXO🔺O
PUT리소스 갱신,생성C/UOXO🔺O
DELETE리소스 삭제DOXOOX
HEAD헤더 데이터취득-OO---
OPTIONS지원하는 메소드취득-O----
TRACE요청메시지반환-O----
CONNECT프록시 동작의 터널접속으로 변경-X----

HTTP Status Code

응닫의 상태를 나타내는 코드

의미내용
1XX처리중처리가 계속되고있는 상태.클라이언트는 요청을 계속하거나 서버의지시에 따라서 재요청
2XX성공요청의성공
3XX리다이렉트다른리소스로 리다이렉트.해당 코드를 받았을 때는 Response의 새로운주소로 다시 요청
4XX클라이언트 에러클라이언트의 요청에 에러가있는상태.재전송하여도 에러가 해결되지않는다
5XX서버에러서버 처리중 에러가 발생한 상태.재 전송시 에러가 해결 되었을수도 있다.

-->100번대 의 코드 처리중
-->200번이 제일많이씀(성공)
--> 300번대 코드는 리다이렉트 할때 사용
--> 400번대 코드는 클라이언트가 서버를 요청을 잘못한경우
--> 500번대는 서버에러임 재전송해도 에러가 해결되어있을수도있다

자주사용되는 코드

의미성공
200성공
201성공.리소스를 생성 성공
301리다이렉트,리소스가 다른장소로 변경됨을 알림
303리다이렉트,Client에서 자동으로 새로운 리소스로 요청처리
400요청오류,파라미터 에러
401권한없음(인증실패)
404리소스없음(페이지를 찾을수없음)
500서버 내부 에러(서버 동작 처리 에러)
503서비스 정지(점검 등등)
profile
백엔드

0개의 댓글