Practice loop

실습은 네 화면을 한 바퀴 돌며 같은 세션을 확인한다

버튼, 사용자 정보, 클라이언트 보호, 서버 보호를 따로 보지 말고 연결해서 점검한다.

AuthButtons

로그인 전에는 로그인, 로그인 후에는 로그아웃 버튼이 보인다.

/auth

UserInfo

로딩, 로그인됨, 로그아웃됨 메시지가 서로 섞이지 않는다.

useSession()

Dashboard

클라이언트 보호 페이지는 로딩 중 보호 콘텐츠를 숨긴다.

/dashboard

Admin

서버 보호 페이지는 렌더링 전에 세션을 검사한다.

/admin

한 바퀴 기준: 로그인 -> 정보 표시 -> 보호 페이지 접근 -> 로그아웃 후 접근 차단.