HTTP 메시지
HTTP 메시지는 서버와 클라이언트 간에 데이터가 교환되는 방식으로 메시지 타입은 두 가지가 있습니다.
바로 요청(request)와 응답(response)입니다.
요청(request)은 클라이언트가 서버로 전달해서 서버의 액션이 일어나게끔 하는 메시지고, 응답(response)은 요청에 대한 서버의 답변입니다.
HTTP Request
1. GET 방식
-
서버에 전달하고자 하는 데이터를 URL에 포함한다.
-
데이터를 Header(헤더)에 포함하여 전송한다.
-
URL에 데이터가 노출되므로 보안에 취약하다.
-
데이터 전송량이 제한된다. (IE: 2,083 Char)
ex) www.hackdun.com/login?id=hackdun&pw=1234
2. POST 방식
-
서버에 전달할 데이터를 Request Header에 포함한다.
-
URL에 데이터를 노출하지 않고 요청한다.
-
데이터를 Body(바디)에 포함한다.
-
데이터 전송량에 제한이 없다.
HTTP1.1 method
Method |
설명 |
GET |
자원 요청 |
POST |
Entity를 포함한 자원 요청 |
HEAD |
서버 측의 데이터를 검색하고 요청하는데 사용 |
TRACE |
요구 메시지의 최종 수신처까지 루프백 검사 |
PUT |
메시지에 포함되어 있는 데이터를 지정한 URI 장소에 그 이름으로 저장 |
DELETE |
URL에 지정되어 있는 자원을 서버에서 지울 수 있게 함 |
OPTIONS |
응답 가능한 HTTP Method를 요청함 |
CONNECT |
응답 가능한 HTTP Method를 요청함 |
HTTP Response
HTTP Status Code (응답코드) 종류
웹 서버 메시지 |
함축적 의미 |
내용 |
100 번대 |
정보 전송 |
임시적인 응답을 나타내는 것을 Status-Line과 선택적인 헤더들로 구성되어 있고, 빈 줄로 끝을 맺음 |
200 번대 |
성공 |
클라이언트의 요구가 성공적으로 수신되어 처리되었음을 의미 |
300 번대 |
리다이렉션 |
해당 요구사항을 처리하기 위해서는 사용자 에이전트에 의해 수행되어야 할 추가적인 동작이 있음을 의미 |
400 번대 |
클라이언트 측 에러 |
클라이언트가 서버에서 보내는 요구 메시지를 완전히 처리하지 못한 경우와 같이 클라이언트에서 오류가 발생한 경우 사용 |
500 번대 |
서버 측 에러 |
서버 자체에서 발생된 오류 상황이나 요구사항을 제대로 처리할 수 없을 때 사용 |