생각정리/항해99
[주특기 1주차] Spring 3일차
생각중임
2023. 8. 27. 20:15
Spring 과제 Level 1
API 명세서 수정
상세문서 | method | url | request | response |
게시물 전체 조회 | GET | /api/board | { "id" : 1, "title" : "제목", "username" : "이름", "contents" : "내용", "password" : "비밀번호", "createdTime" : "2023-08-26T18:43:01.226062”, "modifiedTime" : "2023-08-26T18:43:01.226062” } |
|
게시물 선택 조회 | GET | /api/board/{id} | { "id" : 1, "title" : "제목", "username" : "이름", "contents" : "내용", "password" : "비밀번호", "createdTime" : "2023-08-26T18:43:01.226062”, "modifiedTime" : "2023-08-26T18:43:01.226062” } |
|
게시물 작성 | POST | /api/board | { "title" : "title", "username" : "username", "contents" : "contents", "password" : "password", } |
{ "id" : 1, "title" : "제목", "username" : "이름", "contents" : "내용", "password" : "비밀번호", "createdTime" : "2023-08-26T18:43:01.226062”, "modifiedTime" : "2023-08-26T18:43:01.226062” } |
게시물 수정 | PUT | /api/board/{id} | { "title" : "title", "username" : "username", "contents" : "contents", "password" : "password" } |
{ "id" : 1, "title" : "제목", "username" : "이름", "contents" : "내용", "password" : "비밀번호", "createdTime" : "2023-08-26T18:43:01.226062”, "modifiedTime" : "2023-08-26T18:43:01.226062” } |
게시물 삭제 | DELETE | /api/board/{id} | { "password" : "password" } |
{ "success" : "성공" or "실패" } |
선택 조회를 혼자서 잘 못 본듯하다. 예시의 선택 조회를 보니 Request가 없고 url에 그냥 id를 보내서 가져오는 거였다..
나도 API 명세서와는 다르게 구현을 하면서 Request가 없이 url에 검색조건에 검색어를 넣어서 해당 검색조건에 걸 Query Method를 이용해서 가지고 왔는데.. 이걸 url에 넣는 게 아니라 Request로 해서 받으면 될 것 같아 고치려고 조건을 다시 체크하는 도중에 보니 기능표현이 달랐다.. 이렇게 보내서 가져오는 것도 따로 처서 들고 오는 게 아니니 검색 기능이 아니라고 생각을 했는데 그게 아니었나 보다..
Response도 사용자에게 공개되는 정보가 title, username, contents, modifiedTime이라고 생각해서 그것만 보내서 보여주게 했는데 생각해 보니 이건 사용에게 보내는 게 아니라 프런트로 보내는 정보니깐 모든 정보를 보내고 프런트에서 알아서 보여주고 싶은 정보만 보여주는 게 맞는 거 같아 그냥 이것저것 해본 경험으로 치고 다시 다 수정을 해야겠다. 이후 API 명세서를 보완을 했다.
수정을 하고 게시물 정보를 보는데 수정시간이 기존에 있던 정보가 찍혀서 가는데 다음 조회 시에는 변경된 시간이 보이니 상관이 없는 건가 매니저님께 한번 물어봐야겠다.