Googleログインセットアップ
このプラグインのセットアッププロンプトとインストールステップ、そしてマークダウンガイドをコピーする。
このガイドでは、Capgo Social LoginとGoogleログインを設定する方法を学びます。Googleログインを設定するには、以下のものが必要です。
- Googleアカウント
一般設定
「一般設定」のセクションこの部分では、Googleによって表示されるログイン画面を設定します。
- 以下のリンクをクリックしてください。 console.cloud.google.com
- プロジェクトセレクターをクリックしてください
- プロジェクトが既に存在しない場合は、以下の手順に従って新しいプロジェクトを作成してください 新しいプロジェクトを作成してください.
- Google Console で
New project
- プロジェクト名を入力し、作成ボタンをクリックしてください
Create
- プロジェクト名がセレクターに表示されていることを確認してください
- Google Console で
- __CAPGO_KEEP_0__
OAuth consent screen-
検索バーをクリックしてください
-
を検索してください
OAuth consent screenをクリックしてください
-
承認画面を設定
をクリックしてください
create
-
- アプリの情報を入力してください
-
始めに
App Information
- アプリ名とサポートメールのアドレスを入力してください
App Name - ユーザーへのサポートメールのアドレスを入力してください
user support email
-
あなた CAN アプリロゴを追加することができます。
-
SHOULD 設定する必要があります。 ドメイン設定
App domain
-
提供する必要があります 開発者のメールアドレス 開発者連絡先情報セクション
-
クリックしてください
save and continue
- アプリ名とサポートメールのアドレスを入力してください
-
- スコープを設定
-
クリックしてください
add or remove scopes
-
以下のスコープを選択し、クリック
update
-
クリック
save and continue
-
- テストユーザーを追加
- テストユーザーセクションの追加ボタン
add users
- テストユーザー用のメール入力フィールドと追加ボタン
add
- テストユーザー画面の保存と続行ボタン
save and continue
- テストユーザーセクションの追加ボタン
- クリック
back to dashboard
- アプリを検証する
オンラインアクセスとオフラインアクセスの違い
オンラインアクセスとオフラインアクセスの違いGoogleログインを使用する方法は複数あります。 Capacitor の使用方法の違いを表す表があります。
| オンラインアクセス | オフラインアクセス | |
|---|---|---|
| バックエンドが必要 | ❌ | ✅ |
| 長期アクセストークン | ❌ | ✅ |
| 簡単な設定 | ✅ | ❌ |
まだどちらを選択するか分からない場合は、以下のシナリオを考慮してください。
-
ユーザーがログインするようにしたい場合は、すぐにカスタムJWTを発行する予定です。アプリはGoogle APIを呼びません。
この場合、オンラインアクセスを選択してください。
-
アプリがクライアントからGoogle APIを呼びますが、サーバーから呼びません。
この場合、オンラインアクセスを選択してください。
-
アプリは、ユーザーがアプリを使用している間のみ、Google APIをバックエンドから呼び出すことになります。
この場合、オンラインアクセスを選択してください。
-
アプリは、ユーザーのカレンダーを定期的に確認しますが、ユーザーがアプリを使用していない場合でも。
この場合、オフラインアクセスを選択してください。
オンラインアクセスの例
「オンラインアクセスの例」このチュートリアルのこの部分では、ユーザーをバックエンドで検証する方法を紹介します。
この例は非常に簡単で、以下の技術に基づいて構築されます。
この例の code を見つけることができます。 ここ
ここでは
このアイデアは比較的単純です。ユーザーに簡単な __CAPGO_KEEP_0__ を送信し、トークンが有効であるかどうかを確認し、有効であればユーザーのメールアドレスやその他のユーザー情報を取得します。 GET Google OAuth Playground でトークン情報のレスポンスを表示します。 https://www.googleapis.com/oauth2/v3/tokeninfo ここから、ユーザーに独自の JWT を発行したり、セッション Cookie を発行したりすることができます。最終的な認証実装の可能性は限りません。
Google の OAuth 2.0 Playground を参照してください。
If you do want to call Google API’s, I would strongly recommend looking at オフライン アクセスを使用して独自のバックエンドで実装するここ
オフラインアクセスを使用するには、以下が必要です。
- HTTPサーバー
この例では、次の技術を使用して、オフラインアクセスを提供するアプリケーションを作成します。
-
LowDb (シンプルなデータベース)
この例のcodeは ここにあります
As for the client code, it looks like this:
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オフラインモードでは、リフレッシュトークンはバックエンドで安全に交換され、保存されます。 SocialLogin.refresh() Googleログインセットアップから続けてください serverAuthCode セクション名:Googleログインセットアップから続けてください
Googleログインセットアップを使用している場合
GoogleログインセットアップGoogleログインセットアップを使用している場合、Googleログインセットアップを Using @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login Using @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login for the native capability in Using @capgo/capacitor-social-login for the native capability in Using @capgo/capacitor-social-login @capgo/capacitor-social-login capgo/capacitor-social-loginの実装詳細について capgo/capacitor-passkey capgo/capacitor-passkeyの実装詳細について capgo/capacitor-native-biometric capgo/capacitor-native-biometricの実装詳細について、 2要素認証 2要素認証の実装詳細について