
사이드 프로젝트나 회사 생활중 REST API, 또는 API 를 개발했지만 정확한 정의도 모르고 개발을 했던 것 같다. Self-Describtive Message와 HATEOAS를 만족해야지만 REST API 라고 불릴 수 있는 것을 알지 못했다. 포스팅 목표 : 1

오늘의 목표 : TDD 기반으로 Event 생성 API 구현(MockMvc 사용) > #### 오늘의 목차 : 1. 입력값 전달 후 201 JSON 응답받기 2. EventRepository 구현 후 id는 DB에 들어갈 때 자동생성된 값으로 나오는지 확인 사전지식 > #### MockMvc (스프링 MVC 테스트 핵심 클래스) 웹 서버를 띄우지 않...

작성한 Test 를 실행해보면 다음과 같이 성공하는 것을 볼 수 있다.

오늘의 목표 : 입력값이 이상한 경우 Bad Request 보내는 방법 입력값이 이상한 경우란 : 유효성 검사(Java Bean Validation) 를 실패하거나, DTO에 정의된 값 이외의 것을 보내는 것 이라고 정의 하겠다. > #### 오늘의 목차 : 1

오늘의 목표 : Errors의 JSON Serialize를 구현하여 Bad Request 응답 본문에 Errors 정보를 보내자. 설명 : Bad Request 응답 본문 만들기 지금까지는 본문에 메시지 없이 BadRequest응답만 보냈다. 응답 본문에 Errors 에 대한 정보를 만들어서 보내야 한다. ResponseEntity.badRequest(...

오늘의 목표 : 비즈니스 로직 적용 됐는지 응답 메시지 확인 (offline과 free 값 확인) > #### 오늘의 목차 : 1. 비즈니스 로직 구현 및 테스트 작성 1. 비즈니스 로직 구현 및 테스트 작성 createEvent 수정 > #### 비즈니스 로직을 추가하지 않았기 때문에 테스트 실패 Event 에 비즈니스 로직 추가 Event...

오늘의 목표 : Spring HATEOAS 적용 > #### 오늘의 목차 : 1. Spring HATEOAS 소개 2. Spring HATEOAS 적용 1. Spring HATEOAS 소개 > #### Spring HATEOAS 란 HATEOAS 를 만족하는 REST representation을 제공하는 API를 만들 때 편리하게 사용할 수 있는 툴을...

경로 : src/main/asciidoc/index.adoc 경로 : /docs/index.html 에 생성된다.

Error 정보와, 링크정보로 index link 정보를 확인할 수 있다.

오늘의 목표 : Event 목록 조회 API 구현 > #### 오늘의 목차 : 1. Event 목록 조회 API 구현 1. Event 목록 조회 API 구현 queryEvents 테스트 작성 >#### 테스트로 이벤트를 30개 생성하고, 각 페이지의 크기를 이벤

오늘의 목표 : Event 조회 API 구현 > #### 오늘의 목차 : 1. Event 조회 API 구현 1. Event 조회 API 구현 >#### 이전에는 Event 목록을 조회하는 API를 구현했다면, 이번에는 Event 한 건을 조회하는 API를 구현해보자. Event 조회 성공 Test와, 없는 Event 조회 시 404 응답 Te...

오늘의 목표 : Event 수정 API 구현 > #### 오늘의 목차 : 1. Event 수정 API 구현 1. Event 수정 API 구현 >#### 수정 API 를 구현하며 테스트 해야할 4가지가 있다. 1. Event를 정상적으로 수정한 경우 (200) 2.값 자체가 없어서 Event 수정에 실패하는 경우 (400) 3. 로직상 잘못된...

오늘의 목표 : API 에서 Event 생성, 수정과 같은 경우(Post, Put 요청)에는 Event list, detail 조회, RestDocs 정보 페이지등 과 달리 인증정보가 필요하다. REST API 보안 적용 (OAuth2)을 하기위해 Account 도메

인증 토큰을 발급 테스트 코드 실행 시

오늘의 목표 : 1 ~ 4 에 대한 목표를 구현하여 REST API 개발 을 마무리 지어보자. 1. 하드코딩 되어있던 문자열을 외부설정으로 분리하고, 2. 지금까지 구현한 Event API 를 정검하며 누락된 요구사항을 추가 3. Event 조회 시 수정 할 수 있는