API

HTTP

아2 2023. 9. 22. 20:10

HTTP 프로토콜이란?

HTTP는 “하이퍼텍스트 전송 프로토콜 (Hypertext Transfer Protocol)“의 약자로, 서버와 브라우저 사이의 데이터 통신을 위한 규약이다

 

-인터넷 상에서 데이터를 주고 받기 위한 서버/클라이언트 모델을 따르는 프로토콜

-애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 작동

-다양한 종류의 데이터(html, 그림, 동영상 등)을 전송할 수 있도록 설계

 

 

HTTP 작동 방식

*클라이언트에서 요청(Request)를 보내면 서버는 요청을 처리해서 응답(Response)

 

 

HTTP 는 비연결성( Connectionless)한 특성이 있다.

비연결성은 클라이언트와 서버가 한번 연결을 맺은 후, 클라이언트 요청에 대해 서버가 응답을 마치면 맺었던 연결을 끊어버리는 성질을 말한다.

 

장점:

HTTP는 불특성 다수를 대상으로 하는 서비스이기때문에 연결을 유지하기 위한 리소스를 줄이면 더 많은 연결을 할 수있으므로 비연결적인 특징을 갖는다.

 

단점:

연결을 끊어버리기 때문에 클라이언트의 이전 상태를 알 수가 없음 그래서 동일한 클라이언트의 모든 요청에 대해 매번 새로운 연결을 시도/해제 과정을 거쳐야 해 연결/해제에 대한 오버헤드가 발생함

=> 쿠키,세션으로 해결 가능한 문제

 

 

HTTP  Method

Method 설명 비고 (DB와 연관)
GET 정보를 요청하기 위해서 사용 SELECT
POST 정보를 추가하기 위해서 사용 INSERT
PUT 정보를 업데이트하기 위해 사용 UPDATE
DELETE 정보를 삭제하기 위해서 사용 DELETE
HEAD 헤더 정보만 요청,
해당 자원이 존재하는지 혹인 서버에 문제가 없는지를 확인
 
OPTIONS 웹 서버가 지원하는 메서드의 종류를 요청  
TRACE 클라이언트의 요청을 그대로 반환 echo

 

 

요청 데이터 Format

*포함 내용

-요청 데이터는 "HEADER"와 "BODY"로 구성

-HTTP 헤더와 바디 구분은 라인피드와 캐리지 리턴(/r/n)을 함께 사용한다.

 

*요청 데이터 Format의 필수요소

-요청메서드 : GET,PUT,POST,PUSH,OPTIONS 등

-요청 URI : 요청하는 자원의 위치를 명시

-HTTP 프로토콜 버전 : 웹 브라우저가 사용하는 프로토콜 버전

 

 

 

응답 데이터 Format

*포함 내용

-프로토콜과 응답코드

-날짜

-서버 프로그램 및 스크립트 정보

-개발자 추가 내용

-Content-Type : HTML,이미지 등

'API' 카테고리의 다른 글

HTTP 오류코드  (0) 2023.05.12
REST API란 무엇인가.  (0) 2023.05.12
api 문서 작성 방법  (0) 2023.05.11