으아아 데드라인 임박
그래도 되긴 된다
난 우리가 일을 좀 크게 벌려가지고..
결국 마지막에 터미널에서만 작동하는 코드를 내게 될 수도 있겠다고 생각했다
다행~
일단 작업한 거 풀 받기
📊 API 명세서 체크표
기능 | HTTP | URL | Request | Response | 완성 여부 |
관리자가 오늘의 문제 post | POST | /main/auth | { (String) “TodayPS 생성 성공“ } | ||
메인페이지 보여주기(오늘의 문제 + 그룹 순위) | GET | /main | { (INT) “ewha_ranking”: “이화여대 그룹 순위” (INT) “rival_ranking”: “이화여대 전 순위 등수” (String) “rival_group_name” : “이화여대 전 순위 그룹 이름” (INT) “solved_num_gap” : “전 순위 그룹과 문제 수 차이” (INT) “pid” : “오늘의 문제 번호” (String) “dib_handle” : “찜한 사람 핸들” (Boolean) “dib” : “찜하기 여부” (String) “p_title” : “오늘의 문제 제목” (INT) “p_tier” : “오늘의 문제 티어” } |
||
오늘의 문제 찜하기 | PUT | /main/todayps/dib/enable | { (INT)”pid”: “찜한 문제 번호” (String) “dib_handle”: “찜한 사람 핸들” } |
{ (INT)”problem_num”: “찜한 문제 번호” (String) “dib_handle”: “찜한 사람 핸들” (Boolean) “dib” : “찜하기 여부” (String) “problem_title” : “오늘의 문제 제목” (INT) “problem_tier” : “오늘의 문제 티어” } |
|
학생의 교내 랭크 보여주기 | GET | /studentRank | { (INT) “rank_ingroup” : “사용자의 교내 랭크” (String) “handle” : “사용자 핸들” (String) “userlink” : “사용자 솔브닥 링크” (String) “tier” : “사용자 티어” (INT) “solved_num” : “사용자 푼 문제 수” } |
⭕️ | |
문제 알고리즘별로 보여주기 | GET | /problems/algo{algoid} | { (String) “tag” : “사용자가 선택한 알고리즘 태그” } → url에 파라미터 형태로 제공(프엔) ex) /problems/algo?tag=알고리즘명 |
{ (INT) “pid” : “문제 번호” (String) “p_title” : “문제 제목” (String) “link” : “문제 링크” (INT) “solvednum” : “푼 사람 수” (String) “tier” : “문제 티어” } |
|
문제 티어별로 보여주기 | GET | /problems/tier | { (String) “tier” : “사용자가 선택한 티어” } → url에 파라미터 형태로 제공 ex) /problems/tier?tier=티어번호 |
{ (INT) “pid” : “문제 번호” (String) “p_title” : “문제 제목” (String) “link” : “문제 링크” (INT) “solvednum” : “푼 사람 수” (String) “algo” : “문제 알고리즘” → 보류? } |
|
같이 풀어요 게시판 게시글 문제번호별로 보여주기(검색) | GET | /pstogether/search/{pid} | { (int) “pid” : “사용자가 검색한 문제 번호” } → url에 파라미터 형태로 제공 ex) /pstogether/search?pid=문제번호 |
{ (INT)”pid” : “문제 번호” (String) “article_title” : “게시글 제목” (String) “handle” : “게시자 핸들” } |
|
같이 풀어요 게시판 게시글 미리보기 | GET | /pstogether/previews | { (INT)”pid” : “문제 번호” (String) “article_title” : “게시글 제목” (String) “handle” : “게시자 핸들” } |
||
같이 풀어요 게시글 상세 조회 | GET | /pstogether/search | { (INT) “articleId” : “게시글 아이디” } |
{ (INT)”pid” : “문제 번호” (String) “handle” : “게시자 핸들” (String) “github_link” : “깃허브 링크” } |
|
같이 풀어요 게시글 올리기 | POST | /pstogether | { (INT)”pid” : “문제 번호” (String) “handle” : “게시자 핸들” (String) “github_link” : “깃허브 링크” (INT) “pw” : “비밀번호” } |
{ ”게시글 등록에 성공했습니다” (INT)”pid” : “문제 번호” (String) “handle” : “게시자 핸들” (String) “github_link” : “깃허브 링크” (INT) “pw” : “비밀번호” } |
|
같이 풀어요 게시글 삭제 | DELETE | /pstogether | { (INT) “articleId” : “게시글 아이디” (INT) “pw” : “비밀번호” } |
{ //비밀번호가 일치할 경우 ”게시글 삭제 성공” } { //비밀번호가 불일치할 경우 ”비밀번호 불일치” } |
📊메인페이지 작업 - 오늘의 문제 + 그룹 순위
HTTP | GET |
URL | http://localhost:8080/main |
request | - |
response | (INT) “ewha_ranking”: “이화여대 그룹 순위” (INT) “rival_ranking”: “이화여대 전 순위 등수” (String) “rival_group_name” : “이화여대 전 순위 그룹 이름” (INT) “solved_num_gap” : “전 순위 그룹과 문제 수 차이” (INT) “pid” : “오늘의 문제 번호” (String) “dib_handle” : “찜한 사람 핸들” (Boolean) “dib” : “찜하기 여부” (String) “p_title” : “오늘의 문제 제목” (INT) “p_tier” : “오늘의 문제 티어” |
{"isSuccess":true,
"code":"COMMON200",
"message":"성공입니다.",
"result":{
"groupInfo":{
"ewha_ranking":121,
"rival_ranking":120,
"rival_group_name":"ë™ì˜ëŒ€í•™êµ",
"solved_num_gap":31
},
"todayPSList":[]
}
}
흠 지금 이렇게 반환되는데..
이름..이깨진다
투데이ps문제도안뜸..
앗싸리 사파리문제였던듯
크롬에서 잘나오고 프로그램에서도굿
사파리가 진짜 한글 변환 안해줌 크롬체고
투데이ps문제는 보니까 아예 테이블이 비어있었음
히언이가 SQL 수정해줌
싹지우고 초반데이터 재세팅
{"isSuccess":true,"code":"COMMON200","message":"성공입니다.","result":{"groupInfo":{"ewha_ranking":121,"rival_ranking":120,"rival_group_name":"동의대학교","solved_num_gap":31},"todayPSList":[{"pid":10834,"p_title":"벨트","p_tier":4,"dib":0,"dib_handle":null},{"pid":12813,"p_title":"이진수 연산","p_tier":4,"dib":0,"dib_handle":null},{"pid":17389,"p_title":"보너스 점수","p_tier":4,"dib":0,"dib_handle":null},{"pid":5656,"p_title":"비교 연산자","p_tier":4,"dib":0,"dib_handle":null},{"pid":8595,"p_title":"히든 넘버","p_tier":5,"dib":0,"dib_handle":null},{"pid":1308,"p_title":"D-Day","p_tier":6,"dib":0,"dib_handle":null},{"pid":10837,"p_title":"동전 게임","p_tier":8,"dib":0,"dib_handle":null},{"pid":8394,"p_title":"악수","p_tier":8,"dib":0,"dib_handle":null},{"pid":9536,"p_title":"여우는 어떻게 울지?","p_tier":8,"dib":0,"dib_handle":null},{"pid":1124,"p_title":"언더프라임","p_tier":10,"dib":0,"dib_handle":null},{"pid":15971,"p_title":"두 로봇","p_tier":12,"dib":0,"dib_handle":null},{"pid":2655,"p_title":"가장높은탑쌓기","p_tier":13,"dib":0,"dib_handle":null},{"pid":2904,"p_title":"수학은 너무 쉬워","p_tier":13,"dib":0,"dib_handle":null},{"pid":7573,"p_title":"고기잡이","p_tier":13,"dib":0,"dib_handle":null},{"pid":2613,"p_title":"숫자구슬","p_tier":14,"dib":0,"dib_handle":null}]}}
앗싸슨~
브론즈 1 이상 5 이하
실버 6 이상 10 이하
골드 11 이상 15 이하
+ CORS 문제 해결
이제 더미데이터가 아닌~ db에 저장된 실제데이터로 탈바꿈한 모습~
이지만 실시간이 아니라서 얘도 더미데이터긴하다
+ 나중에 실제배포할 때 여력이 되면 데이터 구조 바꿔달라고 하기..
📊메인페이지 작업 - 오늘의 문제 찜하기
HTTP | PUT |
URL | http://localhost:8080/main/todayps/dib/enable |
request | (INT)”pid”: “찜한 문제 번호” (String) “dib_handle”: “찜한 사람 핸들” |
response | (INT)”problem_num”: “찜한 문제 번호” (String) “dib_handle”: “찜한 사람 핸들” (Boolean) “dib” : “찜하기 여부” (String) “problem_title” : “오늘의 문제 제목” (INT) “problem_tier” : “오늘의 문제 티어” |
리퀘스트가있따
누가 찜하면 신호보내서 db에 저장해야함
그리고 찜 여부 가져와서 표시하는 것도 만들
ㅎ...
이거하기싫러짐
알고리즘별분류나하러가야지
아닛...선견지명 찢었다
트랜잭션 추가로 인한
찜하기 api 수정 이슈 발생
안하길잘했다
'Club|Project > 이대솔브닥웹사이트 - 뀨엘 | Frontend(React,Next.js)' 카테고리의 다른 글
📊 이대백준랭작프로그램 [뀨업] - 팀프로젝트 완성 (0) | 2024.06.07 |
---|---|
📊 이대백준랭작프로그램 [뀨업] - 프론트 : API 연결 3 (1) | 2024.06.05 |
📊 이대백준랭작프로그램 [뀨업] - 프론트 : API 연결 1 (1) | 2024.05.27 |
💽 이대백준랭작프로그램 [뀨업] - SpringBoot 백엔드 (0) | 2024.05.27 |
💽 이대백준랭작프로그램 [뀨업] - MySQL-데이터베이스 (1) | 2024.05.27 |