HTTP Request Methods
클라이언트가 웹서버에게 요청하는 목적 및 그 종류를 알리는 수단
종류
1. GET
- 지정된 자원을 검색하는데 사용
- 서버의 데이터를 변경하지 않음 (READ)
2. POST
- 서버에 새로운 자원을 생성하도록 요청하는데 사용 (CREATE)
- 일반적으로 클라이언트에서 서버로 데이터를 보낼 때 사용
3. PUT
- 지정된 자원의 전체 내용을 업데이트하는데 사용 (UPDATE)
- 만약 지정된 자원이 없다면 새로운 자원을 생성
- 기존 데이터를 갱신할 때 사용
4. DELETE
- 지정된 자원을 삭제하는데 사용 (DELETE)
- 보통 클라이언트에서 서버 리소스를 삭제하도록 하진 않아서 비활성화로 구성
5. HEAD
- GET과 동일한 응답을 요구하지만, 응답 본문(body)을 포함하지 않는다.
- 주로 리소스의 메타데이터를 검색하거나, URL의 유효성을 검사하거나, 서버의 성능을 측정하기 위해 사
6. CONNECT
- 클라이언트와 서버 사이의 중간 경유를 위함
- 보통 Proxy를 통해 SSL통신을 하고자할 때 사용됨
7. OPTIONS
- 서버 측 제공 메소드에 대한 질의를 하기 위함
- 서버 측에서 지원하고 있는 메소드가 무엇인지를 알기 위해 사용
8. TRACE
- Request 리소스가 수신되는 경로를 보기 위함
- 서버로부터 받은 내용을 확인하기 위해 loop-back 테스트를 할 때 사용
9. PATCH
- 지정된 자원의 부분적인 변경을 적용하는데 사용
- PUT과 달리 자원의 전체 내용을 제공하지 않고 변경할 부분만 제공
HTTP Status Code
서버가 클라이언트의 요청에 어떻게 응답했는지를 나타내는 코드
종류
1. 1XX (정보 응답)
- 정보 확인 용도로 사용
2. 2XX (성공 응답)
- 200(OK) : 요청 성공 (GET)
- 201(Create) : 생성 성공 (POST)
- 202(Accept) : 요청 접수O, 리소스 처리X
- 203(No Contents) : 요청 성공O, 내용 없음
3. 3XX(리다이렉트)
- 300(Multiple Choice) : 요청 url에 여러 리소스가 존재함
- 301(Move Permanently) : 요청 url에 새 위치로 옮겨감
- 304(Not Modified) : 요청 url의 내용이 변경X
4. 4XX(클라이언트 오류)
- 400(Bad Request) : API에서 정의되지 않은 요청 들어옴
- 401(Unauthorized) : 인증되지 않은 사용자
- 403(Forbidden) : 인증은 됐으나, 리소스 접근이 불가한 사용자
- 404(Not Found) : 요청 url에 대한 리소스 존재X
- 405(Method Not Allowed) : API에서 정의되지 않은 메소드 호출
- 406(Not Acceptable) : 처리 불가
- 408(Request Timeout) : 요청 대기 시간 초과
- 409(Conflict) : 모순
- 429(Too Many Request) : 요청 횟수 상한 초과
5. 5XX(서버 오류)
- 500(Internal Server Error) : 서버 내부 오류
- 502(Bad Gateway) : 게이트웨이 오류
- 503(Service Unavailable) :서비스 이용 불가
- 504(Gateway Timeout) :게이트웨이 시간 초과
[참고] https://gyoogle.dev/blog/web-knowledge/HTTP%20Request%20Methods.html
'Computer Science > Web' 카테고리의 다른 글
[Web] OAuth (0) | 2023.08.10 |
---|---|
[Web] Web Server와 WAS의 차이 (0) | 2023.08.10 |
[Web] REST API (0) | 2023.08.10 |
[Web] 쿠키 (Cookie) & 세션 (Session) (0) | 2023.07.24 |
[Web] 브라우저 동작 방법 (0) | 2023.07.24 |