프로젝트

일반

사용자정보

Actions

업무 #391

진행중
JL JL

Add admin HTTP server with dev console UI (port 9090)

업무 #391: Add admin HTTP server with dev console UI (port 9090)

James Lee이(가) 약 7시간 전에 추가함.

상태:
해결
우선순위:
보통
담당자:
목표버전:
시작일:
2026/04/20
완료일:
진척도:

0%

추정시간:

설명

목표

포팅 완료된 gRPC 서비스를 브라우저에서 직접 테스트할 수 있는 개발자 콘솔 UI를 구현한다.

범위

  • axum 의존성 추가
  • src/config.rs — admin_port 설정 추가 (기본값 9090)
  • src/admin/mod.rs — axum HTTP 서버 + REST API + 임베디드 HTML UI
  • src/lib.rs, src/main.rs — admin 서버 등록 및 병렬 실행

REST API 엔드포인트

Method Path 설명
GET /api/auth/keypair secp256k1 키페어 생성
POST /api/auth/challenge 로그인 챌린지 발급
POST /api/dev/sign 챌린지 서명 (dev helper)
POST /api/auth/verify 서명 검증 + JWT 발급
GET /api/users/:wallet 사용자 프로필 조회
GET /api/nodes 노드 목록
GET /api/nodes/:id 노드 상세
POST /api/nodes/challenge 노드 챌린지 발급
POST /api/nodes/register 노드 등록
POST /api/nodes/:id/heartbeat 하트비트 (JWT 필요)
DELETE /api/nodes/:id 노드 삭제 (JWT 필요)
GET /api/wallets/:wallet/receipts 수익 영수증 (JWT 필요)
GET /api/wallets/:wallet/earnings 수익 요약 (JWT 필요)

UI 기능

  • 서비스별 탭 (Auth / User / Node / Wallet)
  • 엔드포인트별 입력 카드 + 응답 JSON 패널
  • 자동 채우기: Keypair → Challenge → Sign → Verify 순서 흐름
  • JWT 헤더 표시 및 저장

DoD

  • cargo build 통과
  • port 9090에서 UI 접근 가능
  • 모든 API 엔드포인트 정상 동작
  • 브라우저에서 전체 Auth 흐름 테스트 가능
Actions

내보내기 PDF Atom