++/CS

[TIL] CS공부 8일차

writtenbyrla 2024. 3. 13. 12:03

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'으로 현재 활동가능한 유저인지 표시하도록 하였습니다.

 

 

 

 


 

 

 

HeaderCookie에 대해 설명해 주세요.

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