개발 창고/Web

[HTTP] 개발하다 보면 접하게되는 HTTP 응답코드

로이제로 2020. 8. 21. 18:09
반응형

흔히들 가장 사이트를 개발하거나 이용하다 보면 404 에러라는 걸 많이 접하게 될 겁니다. 그리고 대부분의 사람들은 이제 404 에러가 무엇인지를 알 정도로 많이 익숙해있습니다. 그럼 403은?? 404는 페이지를 못 찾는다는 건데 403은 뭐지?? 이런 의문이 생기기도 할 겁니다. 그 외에도 많은 응답 코드들이 있고 이는 아래의 사이트에 영문으로 정의되어있습니다. 이 중에서 일부 자주 보게 되는 응답 코드 기준으로 정의해 볼까 합니다.

 

https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1

 

HTTP/1.1: Status Code Definitions

part of Hypertext Transfer Protocol -- HTTP/1.1 RFC 2616 Fielding, et al. 10 Status Code Definitions Each Status-Code is described below, including a description of which method(s) it can follow and any metainformation required in the response. 10.1 Inform

www.w3.org

응답 코드는 일단 3자리 수 중에서 첫 번째에 따라 구분이 나눠집니다.

 

1XX: 정보제공 성격의 응답코드

2XX: 응답 성공과 관련된 코드 (주로 200이 반환)

3XX: Redirect를 알리는 응답 코드

4XX: 클라이언트 요청에 대한 오류

5XX: 서버에서 발생한 요류

 

응답코드 응답명칭 내용
200 OK 클라이언트의 요청에 대해 정상적으로 수행완료되었을 경우 사용합니다. Response Body에 요청과 관련된 내용이 포함되며 오류내용을 전달하는 경우엔, 4XX대 응답코드를 반환하도록 권장합니다.
201 Created 클라이언트가 어떤 리소스 생성을 요청했고, 이에 대한 리소스가 성공적으로 생성되었을 경우 사용합니다.
204 No Content 클라이언트의 요청을 정상적으로 수행하였고, Response Body가 없는 경우에 사용됩니다.
예를 들어 게시글의 조회수 증가 등은 조회수 증가를 요청만 하면 될 뿐, 그에 대한 응답을 받을 필요가 없기 때문에 이러한 응다보드를 받아볼수 있습니다(정의에 따라 다를 수 있습니다).
301 Moved Permanently 클라이언트가 요청한 리소스에 대한 URI가 변경된 경우 해당 응답코드를 반환하며 응답 시 Location Header에 변경된 URI가 포함되어야 합니다.
400 Bad Request 클라이언트의 요청이 부적절한 경우의 응답코드입니다. 예를 들어 서버로 요청한 내용 중 유효성 검증에 실패한 경우 해당 응답코드가 반환될 수 있으며, 이 경우 Response Body에 해당 사유가 포함되어야 합니다.
401 Unauthorized 인증되지 않은 클라이언트가 보호된 리소스에 접근하는 경우 반환되는 응답코드입니다. 예를 들어 로그인 하지 않은 사용자가 마이페이지에 접근하거나 관리자 권한이 없는 사용자가 관리자 페이지에 접근하는 경우 확인 가능합니다.
403 Forbidden 클라이언트가 요청한 리소스는 존재하지만 서버가 그 링크로의 접근을 거부한 경우입니다. 여러 사유가 있을 수 있지만, 그 중에 보안상 이유로 감춰진 경우도 포함됩니다.
404 Not Found 클라이언트가 요청한 리소스가 존재하지 않는 경우 응답코드입니다.
405 Method Not allowed 클라이언트가 요청한 리소스가 사용이 가능하지 않은 Method를 이용한 경우로 예를 들어 일기전용 리소스에 DELETE Mtehod르 ㄹ사용한경우 해당 응답코드가 반환됩니다.
500 Internal Server Error 404 만큼 자주 볼 수 있는 에러로 서버에 문제가 발생한 경우 볼 수 있습니다. 주로 서버가 Off된 경우가 많은데, 단일 서버를 사용중인 사이트의 경우 서버 반영 등에도 해당 500에러를 클라이언트가 볼 수 있습니다.
502 Bad Gateway 클라이언트의 요청을 받은 서버가 게이트웨이 또는 프록시의 역할을 하는 동안 업스트림 서버로 부터 잘못된 응답을 받은 경우 해당 응답코드를 반환합니다.
504 Gateway Timeout 서버가 게이트웨이 또는 프록시 역할을 하는 동안 URI가 지정한 업스트림 서버(예: HTTP, FTP, LDAP) 또는 요청을 완료하기 위해 액세스하는 데 필요한 다른 보조 서버(예: DNS)로부터 요청된 응답시간내에 응답을 받지 못했다.

 

 

반응형

'개발 창고 > Web' 카테고리의 다른 글

[JSTL] Formatting태그(1)  (0) 2020.08.27
[JSTL] Core태그  (0) 2020.08.26
[Javascript] Excel 다운로드 기능 구현하기  (4) 2020.08.21
[Spring] FCM Push서버 개발시 고려사항  (0) 2020.08.20
[Spring] WEB-INF에 접근하기  (0) 2020.08.20