Google 로그인 설정
이 설정 지침을 복사할 준비가 되었습니다.
In this guide, you will learn how to setup Google Login with Capgo Social Login. You will need the following in order to setup Google Login:
- __CAPGO_KEEP_0__
일반 설정
일반 설정 섹션이 부분에서, Google이 표시하는 로그인 화면을 설정하겠습니다.
- 다음으로 이동하세요: console.cloud.google.com
- 프로젝트 선택기 클릭
- 프로젝트가 이미 없다면, 새로운 프로젝트를 생성하세요 새로운 프로젝트 만들기.
- 클릭
New project
- 프로젝트 이름을 입력하고
Create
- 올바른 프로젝트가 선택되어 있는지 확인하세요.
- 클릭
- 구성을 시작하세요.
OAuth consent screen-
검색 바를 클릭하세요.
-
검색어를 입력하세요.
OAuth consent screen검색 결과에서
-
구성 화면 동의 설정
클릭하세요
create
-
- 앱 정보 섹션에서 시작하겠습니다. 앱 이름과 사용자 지원 이메일 필드가 표시됩니다.
-
앱 이름과 사용자 지원 이메일을 입력하세요.
App Information
- 앱 이름과 사용자 지원 이메일을 정확하게 입력하세요.
App Name - 입력하세요
user support email
-
당신은 사용할 수 있습니다. 앱 로고를 추가할 수 있습니다.
-
당신 SHOULD 설정해야 할
App domain
-
당신 필수 개발자의 이메일을 제공해야 합니다.
-
클릭하여
save and continue
- 앱 이름과 사용자 지원 이메일을 정확하게 입력하세요.
-
- 스코프를 구성하세요.
-
클릭하여
add or remove scopes
-
다음 스코프를 선택하고 클릭하세요.
update
-
클릭하여
save and continue
-
- 사용자 추가
- 클릭
add users
- Google 이메일을 입력하고 엔터를 클릭한 후
add
- 클릭
save and continue
- 클릭
- 클릭
back to dashboard
- 인증을 위해 앱을 제출하세요
온라인 접근과 오프라인 접근의 차이점
온라인 접근과 오프라인 접근의 차이점Google 로그인과 Capacitor을 사용하는 여러 가지 방법이 있습니다. 두 가지의 차이점을 요약한 표가 있습니다.
| 온라인 접근 | 오프라인 접근 | |
|---|---|---|
| 백엔드가 필요합니다 | ❌ | ✅ |
| 장기적인 접근 토큰 | ❌ | ✅ |
| 쉬운 설정 | ✅ | ❌ |
아직도 어떤 것을 선택해야 할지 모르는 경우, 다음 시나리오를 고려해 보세요:
-
사용자가 로그인하기를 원하고, 사용자에게 커스텀 JWT를 즉시 발급하고자 할 때, 앱은 Google API를 호출하지 않습니다.
이 경우 온라인 접근을 선택하세요.
-
앱이 클라이언트에서 Google API를 호출하지만 백엔드에서 호출하지 않는 경우
이 경우 온라인 접근을 선택하세요.
-
앱이 백엔드에서 Google API를 호출하지만 사용자가 앱을 사용하고 있는 경우에만 호출하는 경우
이 경우 온라인 접근을 선택하세요.
-
앱이 사용자가 앱을 사용하지 않는 경우에도 사용자의 캘린더를 주기적으로 확인하는 경우
이 경우 오프라인 접근을 선택하세요.
온라인 접근을 위한 예제 백엔드
Section titled “온라인 접근을 위한 예시 백엔드”이 튜토리얼의 이 부분에서, 나는 사용자의 인증을 백엔드에서 검증하는 방법을 보여줄 것이다.
이 예시는 매우 단순하고, 다음과 같은 기술을 기반으로 할 것이다:
이 예시의 code를 찾을 수 있다 여기
보시다시피:
아이디어는 매우 단순하다. 단순한 __CAPGO_KEEP_2__를 GET __CAPGO_KEEP_2__는 https://www.googleapis.com/oauth2/v3/tokeninfo 그것은 유효한 토큰인지 여부를 반환하고, 유효한 경우 사용자의 이메일을 반환하며, 사용자의 토큰에 대한 추가 정보도 제공합니다.
그리고 사용자에게 자체 JWT를 발급하거나 세션 쿠키를 발급하는 등의 인증 구현을 끝내는 데 여러 가지 방법이 있습니다.
Google API의 경우 Google API를 호출하고 싶다면, 강력히 추천하는 대안으로는 구글 OAuth 2.0 Playground. 그곳에서 쉽게 어떤 API를 호출할 수 있는지 확인할 수 있습니다.
사용자에게 오프라인 접근 권한을 제공하는 방법
오프라인 접근 권한을 사용하려면 다음이 필요합니다.HTTP 서버
- 이 예제에서는 다음 기술을 사용하여 앱 내에서 오프라인 접근을 제공할 것입니다.
Hono
-
LowDb (간단한 데이터베이스)
이 예제의 code는 여기서 찾을 수 있습니다. 여기
클라이언트 code는 다음과 같이 보입니다.
import { Capacitor } from '@capacitor/core';import { GoogleLoginOfflineResponse, SocialLogin } from '@capgo/capacitor-social-login';import { usePopoutStore } from '@/popoutStore'; // <-- specific to my app
const baseURL = "[redacted]";
async function fullLogin() { await SocialLogin.initialize({ google: { webClientId: '[redacted]', iOSClientId: '[redacted]', iOSServerClientId: 'The same value as webClientId', mode: 'offline' // <-- important } }) const response = await SocialLogin.login({ provider: 'google', options: { forceRefreshToken: true // <-- important } })
if (response.provider === 'google') { const result = response.result as GoogleLoginOfflineResponse const res = await fetch(`${baseURL}/auth/google_offline`, { headers: { "Content-Type": "application/json" }, body: JSON.stringify({ serverAuthCode: result.serverAuthCode, platform: Capacitor.getPlatform() }), method: "POST" })
if (res.status !== 200) { popoutStore.popout("Full google login failed", "check console"); return }
const { jwt } = await res.json(); const userinfo = await fetch(`${baseURL}/auth/get_google_user`, { headers: { Authorization: `Bearer ${jwt}` } }) if (userinfo.status !== 200) { popoutStore.popout("Full google (userinfo) login failed", "check console"); return } popoutStore.popout("userinfo res", await userinfo.text()); }}Google 로그인 플러그인은 Google 계정으로 로그인하는 기능을 제공합니다. SocialLogin.refresh() Hono Zod validator serverAuthCode Zod
구글 로그인 설정에서 계속하기
구글 로그인 설정에서 계속하기Google Login Setup을 사용 중이라면 구글 로그인 설정 인증 및 계정 흐름을 계획하고 싶다면 @capgo/capacitor-social-login Using @capgo/capacitor-social-login Using @capgo/capacitor-social-login Using @capgo/capacitor-passkey Using @capgo/capacitor-passkey Using @capgo/capacitor-native-biometric Using @capgo/capacitor-social-login 구글 로그인 구현 세부 사항에 대한 @capgo/capacitor-native-biometric 두 단계 인증 구글 로그인 구현 세부 사항에 대한 두 단계 인증