View

HTTP을 알아보자

hooti 2020. 8. 5. 13:56

HTTP란?

HyperText Transfer Protocol의 약자로 텍스트 기반의 통신규약이다. 인터넷에서 데이터를 주고받을 수 있는 프로토콜로, 미리 규칙을 정해놓았기 때문에 모든 프로그램이 해당 규칙에 맞춰 개발되고, 동일한 규칙을 가졌음으로 서로 정보를 교환할 수 있다.

 

 

 HTTP의 동작 

사용자가 브라우저를 통해서 어떠한 서비스를 URL을 통하거나 다른 것을 통해서 요청을 하면(Client -> Server) 서버에서는 해당 요청사항에 맞는 결과 찾아서 사용자에게 응답하는(Server -> Client) 형태로 동작한다. 

HTTP 통신을 위한 문서는 HTML만이 유일한것이 아니다. Plain text, JSON 데이터, XML과 같은 형태의 정보도 주고받을 수 있다. 보통은 클라이언트가 정보를 HTML형태로 받고싶은지, JSON 형태로 받고싶은지 명시해준다.

 

 

 HTTP의 특징 

HTTP 메세지는 HTTP 서버와 클라이언트에 의해서 해석된다.
HTTP는 연결상태를 유지하지 않는 비연결성 프로토콜이다. 연결을 유지하지 않기때문에 요청/응답 방식으로 동작한다.

HTTP는 Stateless(상태저장안함)라 연결되어있지 않다. 여러 요청/응답까리 연결되어 있지 않는다는 뜻이다. 결국 각각의 요청/응답은 독립적인 요청/응답이다.

※ SERVER : 자료에 대한 접근을 관리하는 네트워크 상의 시스템(요청하면 응답을 보내줌)
CLIENT : 자료에 접근할 수 있는 프로그램

 

 


 

 Request(요청) 

클라이언트가 서버에게 연락하는 것을 말한다.

 

1. GET : 자료를 요청할때 사용한다.

2. POST : 자료의 생성을 요청할 떄 사용한다.

3. PUT : 자료의 수정을 요청할때 사용한다.

4. DELETE : 자료의 삭제를 요청할때 사용한다.

 

Request HTTP
Start Line(시작줄,첫줄) : 메서드 구조버전으로 구성되어 있다. (순서 : HTTP 메소드, Requset target(목표url), HTTP Version)
Headers(두번째줄~) : 요청에 대한 정보로 구성되어 있다. 해더의 종류는 매우 많다. 헤더에 대한 종류는 해당링크를 확인하자
Body(헤더에서 한줄띄고) : 요청을 할때 함께 보낼 데이터를 담는 부분이다. 

 

 

 


 

 

 Respones(응답) 

서버가 요청에 대한 답변을 클라이언트에게 보내는것을 말한다.

 

Status Code(상태코드)
상태코드는 굉장히 많은 종류는데 모두 숫자 세자리로 이루어져 있으며, 크게 다섯 부류로 나눌 수 있다.

1. 1XX(조건부응답) : 요청을 받았으며 작업을 계속한다.
2. 2XX(성공) : 클라이언트가 요청한 동작을 수신하여 이해했고 승낙했으며 성공적으로 처리했다.
3. 3XX(리다이렉션 완료) : 클라이언트는 요청을 마치기위해 추가 동작을 취해야한다.
4. 4XX(요청오류) : 클라이언트에 오류가 있다.

5. 5XX(서버오류) : 서버가 유효한 요청을 명백하게 수행하지 못했음.

 

 

 

Respones HTTP
Status Line(첫줄) : 버전 상태코드 상태메시지다. (HTTP버전, Status code(응답상태코드), Status text(응답간략설명))
Headers(두번째줄~) : 응답에 대한 정보로 구성되어 있다.
Body(헤더에서 한줄띄고) : 응답메세지에는 HTML이 담겨있는데 이부분을 받아 브라우저가 화면에 랜더링한다.

 

 

 

 

 

 

 

참고문서 : https://toma0912.tistory.com/69

 

HTTP란 무엇인가?

안녕하세요. 오늘은 HTTP에 대해서 포스팅하려고 합니다. 1. HTTP란? HyperText Transfer Protocol의 약자로 하이퍼텍스트 문서를 교환하기 위하여 사용된 통신 규약입니다. 즉, 웹 서버와 클라이언트 간의

toma0912.tistory.com

참고문서 : https://velog.io/@surim014/HTTP%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80

 

HTTP란 무엇인가?

HTTP (HyperText Transfer Protocol) 텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜이다. 이렇게 규약을 정해두었기 때문에 모든 프로그램이 이 규약에 맞춰 개발해서 서��

velog.io

 

'Assignment' 카테고리의 다른 글

Function Parameters Assignment  (0) 2020.10.26
React 초기세팅 해보자!  (0) 2020.08.06
Data Structure(자료구조)란?  (0) 2020.08.03
JavaScript repl 문제  (0) 2020.07.26
Semantic Web과 Semantic Tag(20 작성글)  (0) 2020.07.20
Share Link
reply
«   2024/05   »
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