feat: 프론트 인증 연동 (소셜 로그인 + Bearer 세션)
- 로그인 화면: 구글(GIS) 버튼 + 애플 버튼 + 개발용 로그인(local) - 인증 스토어(Pinia): 토큰 복구/로그인/로그아웃, 회원 티어를 광고·매칭 제어에 반영 - HTTP 클라이언트: Authorization Bearer 자동 첨부, 401 시 토큰 폐기 후 로그인 이동 - 라우터 가드: 미로그인 시 보호 경로 → /login (소셜 로그인 전용 앱) - 헤더 회원 메뉴/로그아웃, 체크인 주체를 로그인 회원으로 전환 - 토큰 localStorage 저장(웹/Capacitor 공용) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
// 세션 토큰 저장소. localStorage 기반 (Capacitor 웹뷰/웹 공용).
|
||||
// http 클라이언트와 인증 스토어의 순환참조를 피하기 위해 분리.
|
||||
const KEY = 'dognation.token'
|
||||
|
||||
export const tokenStore = {
|
||||
get: (): string | null => localStorage.getItem(KEY),
|
||||
set: (token: string): void => localStorage.setItem(KEY, token),
|
||||
clear: (): void => localStorage.removeItem(KEY),
|
||||
}
|
||||
Reference in New Issue
Block a user