repositories
// build.gradle
maven { url 'https://jitpack.io' }
// or
// build.gradle.kts
maven { url = uri("https://jitpack.io") }
dependencies
// build.gradle
implementation 'com.github.GSM-MSG:GAuth-SDK-Java:v3.0.0'
// or
// build.gradle.kts
implementation("com.github.GSM-MSG:GAuth-SDK-Java:v3.0.0")
repositories
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
dependencies
<dependency>
<groupId>com.github.GSM-MSG</groupId>
<artifactId>GAuth-SDK-Java</artifactId>
<version>v3.0.0</version>
</dependency>
@Bean
public GAuth gauth() {
return new GAuthImpl();
}
@Component
public class Component{
private GAuth gAuth;
public Component(GAuth gAuth){
this.gAuth = gAuth;
}
}
해당 메서드를 통해서 코드 발급 가능하다.
gAuth.generateCode(email, password);
public class GAuthCode {
private String code;
}
코드를 발급한 후 해당 객체를 리턴한다.
gAuth.generateToken(email, password, clientId, clientSecret, redirectUri);
gAuth.generateToken(code, clientId, clientSecret, redirectUri);
이메일, 패스워드, 클라이언트 아이디, 클라이언트 시크릿, 리다이렉트 uri를 사용해서 토큰을 발급할 수도 있고,
코드, 클라이언트 아이디, 클라이언트 시크릿, 리다이렉트 uri를 사용해서 발급할 수도 있다.
public class GAuthToken {
private String accessToken;
private String refreshToken;
}
토큰 발급한 후 해당 객체를 리턴한다.
gAuth.refresh(refreshToken);
refreshToken을 통하여 토큰을 발급받을 수 있다.
public class GAuthToken {
private String accessToken;
private String refreshToken;
}
토큰을 발급받은 후 해당 객체를 리턴한다.
gAuth.getUserInfo(accessToken);
accessToken을 이용하여 유저의 정보를 가져올 수 있다.
public class GAuthUserInfo {
private String email;
private String name;
private Integer grade;
private Integer classNum;
private Integer num;
private String gender; // MALE | FEMALE
private String profileUrl;
private String role; // ROLE_STUDENT | ROLE_TEACHER | ROLE_GRADUATE
}
유저 정보를 해당 객체에 담아 리턴한다.
응답코드가 200이 아니면 예외코드를 담은 GAuthException을 던짐