HTTP 상태 코드 100번대, 200번대, 300번대, 400번대, 500번대에 대해 각각의 특징을 설명해 주세요.
1xx (정보 제공) | 클라이언트의 요청이 수신되어 프로세스를 계속 처리 |
2xx (성공) | 클라이언트의 요청을 받아 성공적으로 처리했음을 나타냄 |
3xx (리다이렉션) | 클라이언트는 요청을 마치기 위해 추가 행동이 필요 |
4xx (클라이언트 오류) | 클라이언트의 요청에 오류가 있어 처리할 수 없음 |
5xx (서버 오류) | 클라이언트의 요청은 유효하지만 서버가 유효한 요청을 처리하는 데 실패 |
200 OK
클라이언트의 요청이 성공적으로 처리되었음을 나타냅니다.
201 Created
서버가 성공적으로 새 리소스를 생성했음을 나타냅니다.
400 Bad Request (잘못된 요청)
클라이언트의 요청이 서버에서 해석될 수 없거나 유효하지 않음을 나타냅니다.
403 Forbidden (금지됨)
지정한 리소스에 대한 액세스가 금지되었음을 나타냅니다.
리소스의 존재 자체를 은폐하고 싶을 경우에는 404 응답 코드를 사용할 수 있습니다.
404 Not Found (찾을 수 없음)
요청한 리소스를 서버에서 찾을 수 없음을 나타냅니다.
클라이언트가 잘못된 URL을 요청했거나, 요청한 리소스가 더 이상 서버에서 사용되지 않을 때 일반적으로 발생합니다.
500 Internal Server Error (내부 서버 에러)
서버에서 요청을 처리하는 동안 예상치 못한 오류가 발생했음을 나타냅니다.
이는 서버에서 처리되지 않은 예외나 오류가 발생했을 때 발생합니다.
ERD 설계를 하면서 가장 중요하게 생각하신 부분을 설명해 주세요
요구사항 반영
서비스 요구사항에 맞게 설계하려고 노력하였습니다.
예를 들면 '패스워드 수정 시 이전에 사용한 3개의 패스워드는 사용하지 못한다'라는 요구사항에 따라 패스워드의 히스토리를 관리하는 테이블을 따로 만들었습니다.
관계 정의
테이블 간 관계 설정을 신경 써서 1:N 관계를 정의하고, 각 테이블의 Primary key를 외래키로 참조할 수 있도록 하였습니다.
사용자 - 팔로우, 게시물, 댓글, 게시물 좋아요, 댓글 좋아요 1 : N의 관계
게시물 - 댓글, 게시물 좋아요, 멀티미디어 파일 1 : N의 관계
댓글 - 댓글 좋아요 1 : N의 관계
설계대로 개발을 하셨을 때 실제로 그렇게 개발이 이루어졌는지 본인의 경험을 설명해 주세요
프로젝트 구현 중 ERD 설계를 수정할 일이 있었습니다.
이유는 데이터 삭제 시 Soft Delete 방식을 적용하기 위해서인데, 유저가 회원탈퇴 시에 데이터를 직접 삭제하지 않고 상태만 변경해 주기 위해 상태를 확인하는 필드를 추가하여 'Y' , 'N'으로 현재 활동가능한 유저인지 표시하도록 하였습니다.
Header와 Cookie에 대해 설명해 주세요.
Header와 Cookie는 웹 애플리케이션에서 클라이언트와 서버 간의 통신을 유지하고 관리하는 데 중요한 역할을 합니다. 보통 서버와 클라이언트 사이에서 사용자 인증 정보를 주고받을 때 사용되는 방식입니다.
Header는 HTTP 요청과 응답에서 메타데이터를 전송하는 데 사용되는 반면, Cookie는 클라이언트와 서버 간의 상태 정보를 유지하고 트래킹 하는 데 사용됩니다.
Header
HTTP 요청과 응답에 포함되는 메타데이터 정보를 나타냅니다.
key-value 쌍 형태로 이루어져 있고 일반적으로 요청 또는 응답의 유형, 길이 등을 포함합니다.
요청 헤더
클라이언트가 서버에게 요청을 보낼 때 추가적인 정보를 헤더에 담아 요청을 전송합니다.
응답 헤더
서버가 클라이언트에게 응답을 보낼 때 해당 정보를 헤더에 담아 응답을 전송합니다.
Cookie
웹 브라우저에 저장해서 사용하는 형태로 클라이언트가 서버에 요청을 보낼 때 서버는 쿠키를 함께 전송합니다. 브라우저는 이 쿠키를 저장하고, 이후 서버에 요청을 보낼 때마다 쿠키를 함께 전송합니다.
주로 사용자 인증, 세션 관리 등에 사용되며 이름, 값, 만료 날짜 등의 정보로 구성됩니다.
'++ > CS' 카테고리의 다른 글
[TIL] CS공부 10일차 (1) | 2024.03.15 |
---|---|
[TIL] CS공부 9일차 (0) | 2024.03.14 |
[TIL] CS공부 7일차 (0) | 2024.03.12 |
[TIL] CS공부 6일차 (0) | 2024.03.11 |
[TIL] CS공부 5일차 (0) | 2024.03.09 |