반응형
✅ STEP 0: 공지사항 API 서버 만들기 (완료)
👉 가장 기본적인 서버 만들기와 배포
- Node.js + Express 사용
- /notice 라우트에서 JSON 형식 공지사항 반환
- CORS 허용 (app.use(cors()))
- Render에 배포하여 외부에서 접근 가능하게 설정
- 예시 주소: https://my-notice-api.onrender.com/notice
// server.js 주요 코드 예시
app.get('/notice', (req, res) => {
res.json({
notices: [
{ title: "업데이트", body: "1.1 업데이트", date: "2025-08-08" }
]
});
});
✅ STEP 1: JSON → DB 연동 (데이터 실시간 관리)
👉 JSON 대신 DB에서 공지사항을 불러오도록 변경,실제 서비스에 쓰기 위한 준비
🔹 방법
- MongoDB 또는 Firebase Firestore 사용
- 서버 시작 시 또는 요청마다 DB에서 데이터 읽기
- 실시간 추가/삭제가 가능해짐
✅ STEP 2: 로그인 기능 + JWT 발급
👉 유저 인증 기능 추가 (관리자/일반 유저 구분 가능)
🔹 흐름
- POST /login 요청 (아이디/비밀번호)
- 서버에서 로그인 확인
- 로그인 성공 → JWT 토큰 발급
- 클라이언트가 이후 요청에 JWT 포함
🔹 JWT란?
- JSON Web Token
- 로그인 정보를 담은 토큰
- "누가 보냈는지" 서버가 확인 가능
✅ STEP 3: 인증된 사용자만 공지 추가 허용
👉 인증되지 않은 사용자는 /notice/add 호출 불가 → "관리자만 공지 추가 가능" = 역할별 API 접근 제어
🔹 구현
- POST /notice/add 라우트 생성
- Authorization 헤더에서 JWT 확인
- 토큰이 유효하면 저장, 아니면 401 Unauthorized 응답
✅ STEP 4: Unity ↔ Node.js 연동
👉 Unity에서 안전하게 API 요청 보내기, 유저 인증을 포함한 안전한 API 통신 완성
🔹 UnityWebRequest 사용 예시
UnityWebRequest request = UnityWebRequest.Get("https://my-api.com/notice");
request.SetRequestHeader("Authorization", "Bearer " + jwtToken);
await request.SendWebRequest();
🔹 서버에서는 JWT 검증 후 응답 처리
🔁 실무에서의 흐름 요약
| 단계 | 목적 | 기술 스택 예시 |
| STEP 0 | 서버 만들기 & 배포 | Node.js, Express, Render |
| STEP 1 | 데이터 관리 | MongoDB, Firebase |
| STEP 2 | 로그인 인증 | JWT, bcrypt |
| STEP 3 | 접근 제어 | Middleware, Authorization 헤더 |
| STEP 4 | 유니티 연동 | UnityWebRequest, async/await |
전체 Flow Chart

💡 Flow 설명:
- 일반 사용자: /notice API 호출
- 관리자: 로그인 → JWT 발급 → 공지사항 추가 API 호출
- 서버: DB에서 데이터를 읽거나 저장
📑 2. 공지사항 API 명세
| 메서드 | 경로 | 설명 | 인증 필요 | 요청 바디/쿼리 |
| GET | /notice | 모든 공지사항 목록 불러오기 | ❌ | 없음 |
| POST | /login | 로그인 요청 (JWT 발급) | ❌ | { username, password } |
| POST | /notice/add | 새로운 공지사항 추가 | ✅ JWT 필요 | { title, body, date } |
✅ 인증이 필요한 API는 Authorization: Bearer <token> 헤더를 포함해야 합니다.
반응형
'유니티' 카테고리의 다른 글
| NavMesh.SamplePosition (NavMesh에 존재하는 가장 가까운 점찾기) (0) | 2025.08.26 |
|---|---|
| Unity Tmp 텍스트 부분 색 변경 (0) | 2025.08.25 |
| [node.js, 유니티] 공지사항 API 서버 만들기_2탄 (0) | 2025.08.08 |
| [node.js, 유니티] 공지사항 API 서버 만들기 (0) | 2025.08.08 |
| Unity 공지사항 시스템 개발 - Unity ↔ REST API 연동 핵심 기술 정리 (0) | 2025.08.08 |