-
Notifications
You must be signed in to change notification settings - Fork 0
API
오주은 edited this page Feb 12, 2025
·
1 revision
학생이 답해요에 참여하는 API
-
GET /student/agendas/{agendaId}– 답해요 상세 조회 -
POST /student/agendas/{agendaId}– 답해요 참여 -
DELETE /student/agendas/{agendaId}– 답해요 나가기 -
GET /student/agendas– 답해요 상태별 조회 -
GET /student/agendas/{agendaId}/chat– 특정 답해요 채팅 조회 -
GET /student/agendas/my– 내가 참여한 답해요 리스트 조회 (카카오톡 채팅방)
말해요 채팅방의 채팅 내역을 관리하는 API
-
GET /api/opinions/{opinionId}– 말해요 채팅방에 해당하는 대학 이름 조회 -
GET /api/opinions/{opinionId}/chat– 말해요 채팅 내역 조회
학생회가 답해요 안건을 관리하는 API
-
GET /admin/agendas– 안건 상태별 조회 -
POST /admin/agendas– 답해요 안건 생성 -
GET /admin/agendas/{agendaId}– 답해요 상세 조회 -
DELETE /admin/agendas/{agendaId}– 답해요 채팅방 삭제 -
PATCH /admin/agendas/{agendaId}– 답해요 채팅방 수정 -
PATCH /admin/agendas/{agendaId}/close– 답해요 채팅방 종료 -
GET /admin/agendas/{agendaId}/chat– 특정 답해요 채팅 조회
학생이 말해요를 제안하고 관리하는 API
-
GET /student/opinions– 최근 1달간 학생 말해요 통계 조회 -
POST /student/opinions– 학생 말해요 제안 -
PATCH /student/opinions/{opinionId}/remind– 학생 말해요 리마인드 요청 -
GET /student/opinions/my– 내가 만든 말해요 리스트 조회 -
DELETE /student/opinions/{opinionId}– 말해요 채팅방 삭제
-
POST /student/auth/{provider}/login– 소셜 로그인 -
POST /student/auth/login/extend– 로그인 연장 -
PATCH /student/auth/university– 학생의 소속 대학 정보 업데이트
-
POST /student/auth/email– 이메일 인증 요청 -
POST /student/auth/email/verify– 이메일 인증 확인
-
POST /api/images– 이미지 업로드 -
DELETE /api/images– 이미지 삭제
-
POST /admin/auth/login– 관리자 로그인
-
GET /api/universities– 등록된 대학 목록 조회
학생회가 말해요를 관리하는 API
-
GET /admin/opinions– 학생회 말해요 목록 조회
- 탭바 슬라이딩 애니메이션으로 전환하기
- Presigned url 을 통한 이미지 업로드
- 입력 크기에 맞춰 늘어나는 textarea만들기
- flex:1를 사용할 때 부모 컴포넌트의 사이즈를 넘어가는 현상
- 위아래로 채팅 무한 스크롤 구현하기
- 공통 컴포넌트 문서화를 통해 UI 재사용성 향상
- 전역적 소켓 관리
- 쿼리 캐싱을 이용한 서버 상태 관리
- 전역 에러 처리
- 모바일 호환성을 위한 노력
- 기술 선정 이유
- 아키텍처
- 답해요 채팅 저장 방식 고민(데이터베이스 고민)
- 말해요 채팅 저장 방식 고민
- MongoDB에서 답해요와 말해요 채팅 데이터 관리 및 샤드 설계
- 웹소켓 연결 방식 고민
- MongoDB 인덱스 유무에 따른 쓰기, 조회 성능 테스트
- 중복 웹소켓 세션 처리 전략 및 구현 결정
- @Async를 활용한 이메일 전송 비동기 처리 및응답 시간 개선
- Docker 환경에서 ClassPathResource.getFile()이 실패하는 문제 해결
- Redis sync vs Async
- MongoClient vs Spring Data MongoDb
- 채팅방 웹소켓 이벤트 정리
- 무한 스크롤 정리
- 중복 로그인 방지
- 이미지 업로드 분리 및 비동기화
- 채팅 전송 도중 채팅방이 삭제된다면?
- 금칙어 필터링
- 답해요 성능테스트
- 새로 개설된 말해요 채팅방 실시간으로 알리기