maplestory/backend/routes/admin.js
caadiq 6c51e7d94d OAuth 제거, 닉네임 입력 방식으로 변경 및 관리자 페이지 추가
- 넥슨 OAuth 로그인 제거 (Redis, 세션, User 모델 등)
- 캐릭터 닉네임 입력 → API 키로 조회하는 방식으로 변경
- 관리자 페이지 추가 (/admin?key=<NEXON_API_KEY>)
- 보스 선택 UI를 3단 레이아웃(캐릭터/보스/결과)으로 리디자인
- 캐릭터 및 보스 선택 데이터 localStorage 저장

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 18:02:32 +09:00

28 lines
708 B
JavaScript

import { Router } from 'express';
const router = Router();
// 관리자 인증 미들웨어
function requireAdmin(req, res, next) {
const key = req.headers['x-admin-key'];
if (!key || key !== process.env.NEXON_API_KEY) {
return res.status(403).json({ error: '접근 권한이 없습니다' });
}
next();
}
// 관리자 키 검증
router.post('/verify', (req, res) => {
const { key } = req.body;
if (key === process.env.NEXON_API_KEY) {
return res.json({ verified: true });
}
res.status(403).json({ error: '유효하지 않은 키입니다' });
});
// 관리자 API에 미들웨어 적용
router.use(requireAdmin);
// TODO: 보스 관리 API 추가 예정
export default router;