728x90
웹 브라우저의 세션과 관련된 개념을 설명해드리겠습니다.
- 세션(Session)의 기본 개념
- 세션은 사용자가 웹사이트를 방문하고 있는 동안의 상태를 유지하는 메커니즘입니다.
- 사용자가 웹사이트를 처음 방문하면 서버는 고유한 세션 ID를 생성하고, 이 ID를 쿠키를 통해 브라우저에 저장합니다.
- 이 세션 ID를 통해 서버는 사용자를 식별하고, 사용자별 데이터를 관리할 수 있습니다.
- 세션의 주요 특징
- 임시성: 세션은 사용자가 브라우저를 닫거나 일정 시간 동안 활동이 없으면 종료됩니다.
- 서버 측 저장: 세션 데이터는 주로 서버에 저장됩니다.
- 보안성: 세션 ID는 랜덤하게 생성되며, 쿠키에 저장되어 전송됩니다.
- 브라우저에서의 세션 관리
- 쿠키 기반 세션: 가장 일반적인 방식으로, 세션 ID가 쿠키에 저장됩니다.
- 로컬 스토리지/세션 스토리지: HTML5에서 도입된 방식으로, 클라이언트 측에 데이터를 저장합니다.
- localStorage: 브라우저를 닫아도 데이터가 유지됩니다.
- sessionStorage: 브라우저 탭을 닫으면 데이터가 삭제됩니다.
- 현재 프로젝트에서의 세션 관리
Searched codebase for "session service"
현재 프로젝트에서 세션 관리는 다음과 같이 구현되어 있습니다:
- 세션 관리 방식
- SessionService 클래스를 통해 세션을 관리합니다.
- 로그인 관련 쿠키를 추출하고 저장합니다:
Apply to camera_bloc....
- 세션 동기화
- 여러 탭 간에 세션을 동기화합니다:
Apply to camera_bloc....
- 로그인 상태 관리
- 로그인 상태를 확인하고 관리합니다:
Apply to camera_bloc....
- 세션 종료 처리
- 로그아웃 시 세션을 정리합니다:
Apply to camera_bloc....
- 브라우저와의 차이점
- 일반 웹 브라우저와 달리, 앱에서는 웹뷰를 통해 세션을 관리합니다.
- 쿠키와 로컬 스토리지를 모두 사용하여 세션을 유지합니다.
- 여러 탭 간의 세션 동기화를 위해 추가적인 로직이 필요합니다.
- 보안 고려사항
- 세션 ID는 서버에서 생성되며, 클라이언트는 이를 쿠키로 저장합니다.
- 로그아웃 시 모든 세션 관련 데이터를 삭제합니다.
- HTTPS를 사용하여 세션 데이터의 보안을 유지합니다.
728x90
'소프트랩스 > 비쨔' 카테고리의 다른 글
웹뷰 안랩 결제에러 관련 (2) | 2025.04.15 |
---|---|
웹뷰는 웹의 브라우저 (1) | 2025.04.08 |
결제 intent 에러 (1) | 2025.04.03 |
파이어베이스와 도메인,ip, api 관계 (1) | 2025.04.02 |
ios 빌드번호 바꾸는법 (0) | 2025.03.25 |