서버에 임무를 부여하는 HTTP 메소드
HTTP Request : GET
- 요청 데이터의 인수를 웹 브라우저의 URL로 전송
- 데이터가 주소 입력란에 포함되어 최소한의 보안도 유지되지 않는 취약한 방식
- Request URI로 식별된 리소스를 가져올수 있도록 요구
HTTP Request : POST
- NTT를 전송하기 위해 사용
- URL에 요청 데이터를 기록하지 않고 HTTP 헤더에 데이터 전송
- NTT에 URL로 전송하지 않으므로 다른 사용자가 해당 페이지를 볼 수 없음
HTTP Request : PUT
- POST와 유사한 전송구조
- Request 중에 포함된 NTT를 Request URI로 지정한 곳에 보존하도록 요구
- 인증 기능 없이 누구든지 파일을 업로드 가능하다는 보안상 문제 포함
HTTP Request : Head
- Get 방식과 동일
- 서버측 데이터를 검색하고 요청하는데 사용
- Body가 없고 응답 코드와 head로만 응답
- URI 유효성과 리소스 걍신 시간을 확인하는 목적 ( 웹서버 정보 확인, 버전확인, 최종 수정 일자 확인 용도 )
HTTP Request : DELETE
- URI에 지정된 자원을 서버에서 지울 수 잇게 함
- 원격지 웹 서버에 파일을 삭제하기 위해 사용되며 PUT과는 반대 메소드
HTTP Request : OPTION
- 자원에 대한 요구/ 응답 관계와 관련된 선택 사항 정보를 요청할 때 사용
- 시스템에서 지원되는 메소드 종류 확인 가능
- 웹 서버에서 지원하는 HTTP 요청방식을 확인하고자 할 때 사용
HTTP Request : Trace
- 웹 서버가 웹 브라우저에서 보낸 내용을 받아 이를 다시 웹 브라우저로 되돌려 주는 것 -> 클라이언트로 Loopback 발생
- 웹 서버로 가는 네트워크 경로 체크하는 메소드
HTTP Request : Connect
- Proxy와 같은 중계 서버와 사용 시 적용
- 프록시에 터널 접속 확립을 요함으로써 TCP 통신을 터널링하기 위해 사용
- SSL 또는 TLS 등의 프로토콜로 암호화 된 것을 터널링 시키기 위해 사용
CONNECT proxy.test.com:8080 HTTP/1.1 Host:proxy.test.com
HTTP Response CODE
실행결과코드 | 내용 | 설명 |
---|
100번대 | 정보전송 | HTTP 1.0 까지는 계열에 대한 정의가 이루어지지 않았기 때문에 실험 용도 외에는 100번대 서버측의 응답이 없다 |
200번대 | 성공 | 클라이언트의 요구가 성공적으로 수신 및 처리되었음을 의미 |
300번대 | 리다이렉션 | 해당 요구사항을 처리하기 위해 사용자 에이전트가 수행해야 할 추가적인 동작이 있음을 의미 |
400번대 | 클라이언트 측 에러 | 클라이언트에 오류가 발생했을때 사용 (ex. 클라이언트가 서버에 보내는 요구 메시지를 완전히 처리하지 못하는 경우) |
500번대 | 서버 측 에러 | 서버 자체에서 발생한 오류 상황이나 요구 사항을 제대로 처리 할 수 없을때 사용 |
HTTP Response : 204 No Content
- Request를 받아서 처리하는데 성공했지만 Response에 NTT body를 포함하지 않음
- 클라이언트에 대해 새로운 정보를 보낼 필요가 없는 경우 사용
HTTP Response : 3XX Redirection
- Request가 정상적으로 처리를 종료하기 위해 브라우저 측에서 특별한 처리를 수행해야함을 나타냄
HTTP Response : 301 Move Permanently
- Request 된 리소스에는 새로운 URI 가 부여되었기 때문에 새로운 URI를 사용해야 한다는 것을 알림
- 북마크하고 있는 경우 Location 헤더 필드에서 가리키고 있는 URI로 북마크 권고 (현재 URI가 최신의 경로가 아니므로)
HTTP Response : 302 Found
- 새로운 URI가 할당되어있기 때문에 그 URI를 사용하도록 권고
- 301과 비슷하지만 302는 일시적 이동
HTTP Response : 4XX 클라이언트 에러
- 클라이언트의 원인으로 에러가 발생했음을 나타냄
HTTP Response : 400 Bad Request
- request 구문이 잘못되었음을 나타냄
- 이 오류가 발생시 request 내용을 재검토하고 재송신할 필요가 있음
HTTP Response : 401 Unauthorized
- 401은 송신한 request에 인증 정보가 필요하다는 것을 나타냄
HTTP Response : 403 Forbidden
- 403은 요청된 resource의 접근 거부되었음을 의미
HTTP Response : 404 Not Found
- Request한 resource가 서버 상에 없음을 나타냄
HTTP Response : 5XX 서버 에러
HTTP Response : 500 Internal Server Error
- Request 처리 도중에 오류가 발생했음을 나타냄
- 웹 에플리케이션에 에러가 발생한 경우/ 일시적인 경우도 있음
HTTP Response : 503 Service Unavaliable
- 일시적으로 서버가 과부하 상태이거나 점검중을 나타냄