Hyungi Ahn 790d12fe13 feat: 토큰 만료 시 자동 로그아웃 기능 추가 및 테이블명 수정
🔐 토큰 만료 시 자동 로그아웃 기능:
1. JWT 토큰 만료 시간 대폭 연장:
   - 액세스 토큰: 24시간 → 7일
   - 리프레시 토큰: 7일 → 30일
   - 사용자 편의성 크게 향상

2. 토큰 만료 감지 및 처리:
   - isTokenExpired() 함수 추가
   - JWT 페이로드 파싱하여 exp 확인
   - 현재 시간과 비교하여 만료 여부 판단

3. 자동 로그아웃 처리:
   - API 호출 시 401 오류 감지
   - 주기적 토큰 만료 확인 (5분마다)
   - 만료 시 자동 인증 데이터 정리
   - 사용자 알림 후 로그인 페이지 리다이렉트

4. 개선된 인증 데이터 관리:
   - clearAuthData() 함수로 통합 관리
   - token, user, userInfo, currentUser 모두 정리
   - 메모리 누수 방지

🐛 데이터베이스 테이블명 수정:
1. projectModel.js:
   - Projects → projects (대문자 → 소문자)
   - 실제 DB 테이블명과 일치

2. taskModel.js:
   - Tasks → tasks (대문자 → 소문자)
   - 실제 DB 테이블명과 일치

3. API 오류 해결:
   - '테이블이 존재하지 않습니다' 오류 수정
   - projects, tasks API 정상 작동

 사용자 경험 개선:
- 토큰 만료로 인한 예상치 못한 오류 방지
- 명확한 만료 알림 메시지
- 자동 로그아웃으로 보안 강화
- 더 긴 세션 유지로 편의성 향상

🔧 기술적 개선:
- JWT 페이로드 안전한 파싱
- 에러 핸들링 강화
- 주기적 백그라운드 확인
- 전역 함수로 재사용성 향상

🎯 결과:
- 안정적인 인증 시스템
- 사용자 친화적인 세션 관리
- 보안성과 편의성의 균형
- API 호출 오류 해결

테스트:
- 토큰 만료 후 자동 로그아웃 확인
- projects, tasks API 정상 작동 확인
2025-11-03 12:49:25 +09:00

TK-FB-Project - 통합 실행 가이드

🚀 한 번에 모든 서비스 실행

🎯 간편 실행 (권장)

cd /Users/hyungi/docker/TK-FB-Project
./start.sh

🛑 간편 중지

./stop.sh

📋 직접 실행

docker-compose up -d
docker-compose down

📊 서비스 목록

서비스 포트 접속 URL 설명
웹 UI 20000 http://localhost:20000 메인 웹 인터페이스
API 서버 20005 http://localhost:20005 Node.js API 서버
FastAPI 브릿지 20010 http://localhost:20010 Python FastAPI 서비스
phpMyAdmin 20080 http://localhost:20080 DB 관리도구
MariaDB 20306 - 데이터베이스 서버

🛠️ 관리 명령어

모든 서비스 중지

cd /Users/hyungi/docker/TK-FB-Project
docker-compose down

서비스 상태 확인

docker ps | grep fb_

로그 확인

docker-compose logs -f

💾 데이터베이스 정보

  • 호스트: localhost:20306
  • 데이터베이스: hyungi
  • 사용자: hyungi
  • 비밀번호: hyungi_password_2025
  • Root 비밀번호: hyungi_root_password_2025

주요 개선사항

  1. 통합 실행: 한 번의 명령으로 모든 서비스 실행
  2. 깔끔한 DB 초기화: 마이그레이션 오류 해결
  3. 일관된 네이밍: fb_ 접두사로 컨테이너 구분
  4. 안정적인 포트: 20000번대 포트 사용
Description
생산팀 포탈 페이지 제작 건
Readme 231 MiB
Languages
Python 81.2%
JavaScript 8.5%
HTML 7.1%
CSS 1.6%
Cython 0.8%
Other 0.7%