feat: 보안 + UX 개선

보안:
- SSAFY OAuth URL https 스킴 검증
- CSRF 방어 X-Requested-With 헤더 추가
- 업로드 에러 상태코드별 메시지 분기 (413, 409, 5xx)

UX:
- Admin 페이지 Toast 알림 통합
- API 에러 메시지 한글화 (localizeError)
- og:title, og:description 메타 태그 추가

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-18 10:37:49 +09:00
parent 1a3be5f76b
commit 555749b953
5 changed files with 43 additions and 4 deletions

View File

@@ -85,6 +85,9 @@ export default function LoginPage() {
onClick={async () => {
try {
const data = await getSSAFYLoginURL();
if (!data.url || !data.url.startsWith('https://')) {
throw new Error('유효하지 않은 로그인 URL입니다.');
}
window.location.href = data.url;
} catch {
setError('SSAFY 로그인 URL을 가져올 수 없습니다.');