Google-Login-Einrichtung
Einen Einrichtungsvorschlag mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin kopieren.
Einführung
Abschnitt mit dem Titel „Einführung“In dieser Anleitung lernen Sie, wie Sie Google Login mit Capgo Social Login einrichten. Um Google Login einzurichten, benötigen Sie Folgendes:
- Eine Google-Konto
Allgemeine Einrichtung
Abschnitt mit dem Titel „Allgemeine Einrichtung“In diesem Teil richten Sie die von Google angezeigte Anmeldeseite ein.
- Bitte gehen Sie zu console.cloud.google.com
- Klicken Sie auf den Projektselector
- Wenn Sie noch keinen Projekt haben, bitten wir Sie, ein neues Projekt zu erstellen.
- Klicken Sie auf
New project
- Benennen Sie Ihr Projekt und klicken Sie
Create
- Stellen Sie sicher, dass Sie sich auf dem richtigen Projekt befinden
- Klicken Sie auf
- Beginnen Sie mit der Konfiguration des
OAuth consent screen-
Klicken Sie auf die Suchleiste
-
Suchen Sie nach
OAuth consent screenund klicken Sie darauf
-
Konfigurieren Sie den Zustimmungsschirm
Klicken Sie auf
create
-
- Füllen Sie die Informationen über Ihre App
-
Beginnen wir mit der
App Information
- Bitte geben Sie Ihre
App Name - Eingeben Sie das
user support email
-
Sie KÖNNEN Hinzufügen Sie das App-Logo.
-
SOLLTEN die Domain-Konfiguration für die App konfigurieren.
App domain
-
MUSSEN den E-Mail-Adresse des Entwicklers bereitstellen Entwickere-Mail-Adresse
-
Konfiguration der Berechtigungen
save and continue
- Bitte geben Sie Ihre
-
- Speichern und fortfahren
-
Klicken Sie auf
add or remove scopes
-
Wählen Sie die folgenden Berechtigungen aus und klicken Sie
update
-
Klicken Sie
save and continue
-
- Hinzufügen eines Testnutzers
- Klicken Sie auf
add users
- Geben Sie Ihre Google-E-Mail ein, drücken Sie Enter und klicken Sie
add
- Klicken Sie
save and continue
- Klicken Sie auf
- Klicken
back to dashboard
- Bewerben Sie Ihr App für die Verifizierung
Differenzen zwischen Online-Zugriff und Offline-Zugriff
Abschnitt mit dem Titel „Differenzen zwischen Online-Zugriff und Offline-Zugriff“There are multiple ways to use Google Login with Capacitor. Here is a table that summarizes the differences between the two:
| Online-Zugriff | Offline-Zugriff | |
|---|---|---|
| Benötigt einen Backend-Server | ❌ | ✅ |
| Langzeitzugriffstoken | ❌ | ✅ |
| Einfache Einrichtung | ✅ | ❌ |
Wenn Sie immer noch nicht wissen, welches Sie wählen sollten, bitten Sie sich bitte die folgenden Szenarien zu überlegen:
-
Sie möchten, dass der Benutzer sich anmeldet, und direkt danach erhalten Sie ihm einen benutzerdefinierten JWT. Ihre App ruft keine Google-APIs auf
In diesem Fall wählen Sie Online-Zugriff.
-
Ihre App ruft einige Google-APIs vom Client aus, aber nie vom Backend
In diesem Fall wählen Sie Online-Zugriff.
-
Ihre App ruft einige Google-APIs vom Backend aus, aber nur, wenn der Benutzer aktiv mit der App arbeitet.
In diesem Fall wählen Sie "Online-Zugriff".
-
Ihre App überprüft periodisch den Kalender des Benutzers, auch wenn dieser nicht aktiv mit der App arbeitet.
In diesem Fall wählen Sie "Offline-Zugriff".
Ein Beispiel-Backend für den Online-Zugriff
Abschnitt mit dem Titel "Ein Beispiel-Backend für den Online-Zugriff"In dieser Teils des Tutorials zeige ich Ihnen, wie Sie den Benutzer auf Ihrem Backend validieren können.
Dieses Beispiel wird sehr einfach sein und auf folgenden Technologien basieren:
Sie können das code für dieses Beispiel finden hier
Sie sehen also:
Die Idee ist eigentlich sehr einfach. Sie senden eine einfache GET Anfrage an https://www.googleapis.com/oauth2/v3/tokeninfo und diese gibt Ihnen zurück, ob der Token gültig ist oder nicht und wenn es ist, gibt es Ihnen die E-Mail des Benutzers. Es gibt Ihnen auch einige andere Informationen über den Benutzer-Token
Von dort aus könnten Sie dem Benutzer Ihren eigenen JWT ausstellen oder eine Art Sitzungskochnie ausstellen. Die Möglichkeiten sind endlos, für die endgültige Auth-Implementierung
Wenn Sie Google API aufrufen möchten, würde ich Ihnen stark empfehlen, sich an Google’s OAuth 2.0 Playgroundzuzuwenden. Von dort aus können Sie leicht erkennen, welche APIs Sie aufrufen können
Mit Offline-Zugriff mit Ihrem eigenen Backend
Abschnitt mit dem Titel “Offline-Zugriff mit Ihrem eigenen Backend verwenden”Um den Offline-Zugriff verwenden zu können, benötigen Sie Folgendes:
- Ein HTTP-Server
In diesem Beispiel werde ich die folgenden Technologien verwenden, um den Offline-Zugriff in meiner App bereitzustellen:
-
LowDb Ein einfaches Datenbank-System
Die code für dieses Beispiel finden Sie hier
As für den Client code, sieht er so aus:
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()); }}Hinweis: was fehlt hier ist, dass es in der App keine SocialLogin.refresh() Anforderung gibt. Das ist bewusst. Bei Google Offline-Modus erfolgt die Aktualisierung nachdem Ihr Backend den serverAuthCode Refresh-Token sicher ablegt.
Fortsetzen mit Google Login Setup
Sektion: Fortsetzen mit Google Login SetupWenn Sie Google Login Setup verwenden, um die Authentifizierung und die Kontenflüsse zu planen, verbinden Sie es mit Verwenden Sie @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login Verwenden Sie @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login für die native Fähigkeit in Verwenden Sie @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login Verwenden Sie @capgo/capacitor-social-login für die native Fähigkeit in Verwenden Sie @capgo/capacitor-social-login Verbinden Sie es mit @capgo/capacitor-social-login @capgo/capacitor-social-login für die Implementierungsdetails in @capgo/capacitor-social-login @capgo/capacitor-passkey für die Implementierungsdetails in @capgo/capacitor-passkey @capgo/capacitor-native-biometric für die Implementierungsdetails in @capgo/capacitor-native-biometric und Zwei-Faktor-Authentifizierung für die Implementierungsdetails in Zwei-Faktor-Authentifizierung.