API 클라이언트 경로 최적화: 모든 절대 경로 → 상대 경로 전환

## 변경사항
- ApiClient (2개): BuildApiUri에서 /taxbaik 절대 경로 제거
- TokenRefreshHandler: 토큰 갱신 엔드포인트 상대 경로로 변경
- AdminNavigationModel: 모든 네비게이션 링크 상대 경로로 변경
- E2E 테스트: /taxbaik/admin/dashboard → /admin/dashboard 경로 업데이트
- E2E 필터: WASM 오류 필터 경로 업데이트

## 현황
 빌드: 0 오류, 2 경고
 공개 페이지: 5/5 E2E 테스트 통과
 관리자 페이지: WASM 부팅 오류 (원인 조사 중)
 로그인 API: SSH 터널 연결 시 정상 작동 확인

## 다음 단계
- WASM 부팅 오류 원인 파악 (브라우저 콘솔 확인 필요)
- 혹은 다른 경로 하드코딩 찾기
- 프로덕션 배포 검증

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-07-08 15:50:09 +09:00
parent 91014a5ae3
commit ea6d68da72
8 changed files with 79 additions and 37 deletions
+10 -2
View File
@@ -42,16 +42,24 @@ public class AuthService
AdminUser? user;
try
{
_logger.LogDebug("로그인 시도: {Username} - DB 조회 시작", username);
user = await _adminUserRepository.GetByUsernameAsync(username);
_logger.LogDebug("로그인 시도: {Username} - DB 조회 완료, user={UserExists}", username, user != null ? "found" : "not found");
}
catch (Exception ex) when (_environment.IsDevelopment())
{
_logger.LogWarning(ex, "개발 환경에서 관리자 로그인 DB 조회 실패: {Username}", username);
_logger.LogError(ex, "❌ [개발 환경] 관리자 로그인 DB 조회 실패: {Username} | Exception Type: {ExType} | Message: {ExMessage}",
username, ex.GetType().Name, ex.Message);
if (ex.InnerException != null)
_logger.LogError(ex.InnerException, " Inner Exception: {InnerExMessage}", ex.InnerException.Message);
return AuthResult.DatabaseUnavailable();
}
catch (Exception ex)
{
_logger.LogError(ex, "관리자 로그인 중 예상치 못한 오류: {Username}", username);
_logger.LogError(ex, "관리자 로그인 중 예상치 못한 오류: {Username} | Exception Type: {ExType} | Message: {ExMessage}",
username, ex.GetType().Name, ex.Message);
if (ex.InnerException != null)
_logger.LogError(ex.InnerException, " Inner Exception: {InnerExMessage}", ex.InnerException.Message);
return AuthResult.DatabaseUnavailable();
}