오늘 해볼것은 Swagger 와 postman 사용해보기
기존의 만들엇던 RESTAPI를 테스트하기위해
SWAGGER와 POSTMAN을 써볼것이다..
먼저 SWAGGER..
implementation group: 'io.springfox', name: 'springfox-swagger-ui', version: '2.9.2'
implementation group: 'io.springfox', name: 'springfox-swagger2', version: '2.9.2'
다음과같이 임포트해주기
SwaggerConfig 만들어주기
package com.tc.springboot.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket restAPI() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.tc.springboot"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("TekiesCommunity Spring Boot REST API")
.version("1.0.0")
.description("백엔드 JPA/GRADLE 공부용 TekiesCommunity의 swagger api 입니다.")
.build();
}
}
다음과같이 컨트롤러 설정해주면
짜잔 swagger 설정 완료
postman으로 테스트해보자..
postman 실행하기..
해당 Body 클릭후
알맞게 통신해주면된다..
한번 마이페이지 조회기능을 써보자
swagger에서 다음과같이알려준다
아마 id가 진짜 아이디이고
tc_num이 인덱스번호용으로 알고있다ㅓ..
워크벤치 확인해보자
다음과같으니
TC_ID를 TEST1로 주면 나머지정보를 받아와야된다..
굿...
그렇다면 이제 JSON으로 해볼차례
회원가입 폼입니다..
postman으로 테스트
아차차
JSON으로보내주기
잘들어갔지만 최종적으로는 login 검사를 해줘야될거같긴하다
secure coding을위해 sql로 받는걸 없애야되긴하지만 springboot jpa자체에서 걸러주긴하다고한다..
따로 그리고 로그인에 해당한 코드만 반환해주면된다. (아이디로 검색하고 비;밀번호 반환을 하지말라는뜻)
테스트해보기
이제 에러난 부분을 고쳐야된다..
좀더 조건을 자세히보도록하기위해.. 저렇게 분기하였다..
결과를보니
바로알겠다..
String 비교인데 equals를안씀 ㅎㅎ;; 다음과같이바꿔줘서 다시해보앗다..
잘된당!!
다음 과정에서는 이제 jwt토큰을 얹어서 하는것을 하면 backend의 기초적인부분이 완성되고
REST API 작성하게된다..
그렇다면 남은 과정은 jwt 토큰 // amazon ec2에 젠킨스로 자동빌드해보기 // 자동빌드된것을 자동 배포
3개의 과정이남았다.. 해당과정을 한다면 기초적인 서비스를 제공할수는 있을것이라고 예측된다..