브라우저에 구글 계정이 로그인 되어 있는지 아닌지를 확인하기 위한 작업.
아래와 같은 코드로 구현했다.
window.gapi.load('auth2', function() {
//맨 처음 초기화를 해야만 그 다음 작업을 진행할 수 있다.
window.gapi.auth2
.init({
client_id: googleClientId, //필수
})
.then(() => {
let auth2 = window.gapi.auth2.getAuthInstance();
// 로그인 되어 있을 경우 true, 아닐 경우는 false이다.(에러일 경우도 포함)
let isSingedIn = auth2.isSignedIn.get();
})
});
auth2 라이브러리를 로드한다.
window.gapi.load('auth2', function() {
//window.gapi.init or 다른 api 작업을 진행한다.
});
GoogleAuth 개체를 초기화한다.
window.gapi.auth2.init({
client_id: 'CLIENT_ID.apps.googleusercontent.com', //필수 값
})
나머지 인터페이스는 여기서..
https://developers.google.com/identity/sign-in/web/reference#gapiauth2clientconfig
GoogleAuth 개체를 반환한다. 이 때 gapi.auth2.init()으로 GoogleAuth 개체를 초기화를 해야한다.
const auth = window.gapi.auth2.getAuthInstance();
사용자가 구글 로그인이 되어 있는지 확인하는 함수이다.
로그인 되어 있으면 true
로그인이 되어 있지 않거나 GoogleAuth 개체가 초기화가 되지 않을 경우 false를 반환한다.