Configuration de connexion Google
Copiez un prompt de configuration avec les étapes d'installation et le guide Markdown complet pour ce plugin.
Introduction
Section intitulée « Introduction »Dans ce guide, vous apprendrez à configurer l'authentification Google avec Capgo Social Login. Vous aurez besoin des éléments suivants pour configurer l'authentification Google :
- Un compte Google
Configuration générale
Section intitulée « Configuration générale »Dans cette partie, vous allez configurer l'écran de connexion affiché par Google.
- Veuillez vous rendre sur console.cloud.google.com
- Cliquez sur le sélecteur de projet
- Si vous n'avez pas encore de projet, veuillez créer un nouveau projet.
- Cliquez sur
New project
- Nommez votre projet et cliquez
Create
- Veuillez vous assurer d'être sur le bon projet
- Cliquez sur
- Commencez à configurer le
OAuth consent screen-
Cliquez sur la barre de recherche
-
Recherchez
OAuth consent screenet cliquez dessus
-
Configurez l'écran de consentement
Cliquez sur
create
-
- Remplissez les informations relatives à votre application
-
Commencez par la
App Information
- Veuillez saisir votre
App Name - Entrez le
user support email
-
You, vous CAN, pouvez add the app logo, ajouter le logo de l'application
-
You, vous SHOULD, devriez configure the, configurer
App domain
-
DEVEZ fournir l'adresse e-mail du développeur Informations de contact du développeur avec champ e-mail
-
Enregistrer et Continuer
save and continue
- Veuillez saisir votre
-
- Cliquez sur
-
Configurez les champs d'autorisation
add or remove scopes
-
Choisissez les champs suivants et cliquez
update
-
Cliquez
save and continue
-
- Ajoutez un utilisateur de test
- Cliquez sur
add users
- Entrez votre adresse email Google, cliquez sur entrer, et cliquez
add
- Cliquez
save and continue
- Cliquez sur
- Cliquez
back to dashboard
- Soumettre votre application pour la vérification
Différences entre l'accès en ligne et l'accès hors ligne
Section intitulée « Différences entre l'accès en ligne et l'accès hors ligne »Il existe plusieurs façons d'utiliser Google Login avec Capacitor. Voici une table qui résume les différences entre les deux :
| Accès en ligne | Accès hors ligne | |
|---|---|---|
| Exige un serveur backend | ❌ | ✅ |
| Jeton d'accès longue durée | ❌ | ✅ |
| Configuration facile | ✅ | ❌ |
Si vous ne savez toujours pas lequel choisir, veuillez considérer les scénarios suivants :
-
Vous voulez que l'utilisateur se connecte, immédiatement après vous allez lui émettre un JWT personnalisé. Votre application ne fera PAS d'appels aux API Google
Dans ce cas, choisissez l'accès en ligne.
-
Votre application fera des appels à certaines API Google depuis le client, mais jamais depuis le serveur
Dans ce cas, choisissez l'accès en ligne
-
Votre application appellera certaines API Google depuis l'arrière-plan, mais uniquement lorsque l'utilisateur utilise activement l'application.
Dans ce cas, choisissez l'accès en ligne.
-
Votre application vérifiera périodiquement le calendrier de l'utilisateur, même lorsque celui-ci n'utilise pas activement l'application.
Dans ce cas, choisissez l'accès hors ligne.
Un exemple d'arrière-plan pour l'accès en ligne.
Titre de la section « Un exemple d'arrière-plan pour l'accès en ligne ».Dans cette partie du tutoriel, je vais montrer comment valider l'utilisateur sur votre arrière-plan.
Cet exemple sera très simple et il sera basé sur les technologies suivantes :
Vous pouvez trouver le code pour cet exemple. ici
Comme vous pouvez le voir :
L'idée est plutôt simple. Vous envoyez une requête simple à GET et cela vous retourne si le jeton est valide ou non et si c'est le cas, il vous donne l'adresse e-mail de l'utilisateur. Il vous donne également quelques autres informations sur le jeton de l'utilisateur https://www.googleapis.com/oauth2/v3/tokeninfo Google OAuth Playground montrant les informations de réponse du jeton avec les détails de l'utilisateur
Si vous voulez effectivement appeler Google __CAPGO_KEEP_0__’, je vous recommande fortement de jeter un coup d’œil à
If you do want to call Google API’s, I would strongly recommend looking at À partir de là, vous pouvez facilement voir quels APIs vous pouvez appeler.En utilisant l'accès hors ligne avec votre propre serveur
Si vous voulez effectivement appeler Google __CAPGO_KEEP_0__’, je vous recommande fortement de jeter un coup d’œil à
Titre de la section : « Utilisation de l'accès hors ligne avec votre propre backend »Pour utiliser l'accès hors ligne, vous aurez besoin des éléments suivants :
- Un serveur HTTP
Dans cet exemple, j'utiliserai les technologies suivantes pour fournir l'accès hors ligne dans mon application :
-
LowDb Une base de données simple
Le code pour cet exemple peut être trouvé ici
As pour le client code, il ressemble à ceci :
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()); }}Notez ce qui manque ici : il n'y a pas d'appel dans l'application. C'est intentionnel. En mode hors ligne Google, la mise à jour se produit après que votre serveur échange et stocke le jeton de rafraîchissement de manière sécurisée. SocialLogin.refresh() Continuez de la section de configuration de connexion Google serverAuthCode Titre de la section « Continuez de la section de configuration de connexion Google »
Si vous utilisez
Configuration de connexion Googlepour planifier l'authentification et les flux de compte, connectez-l’avec En utilisant @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login pour la capacité native en utilisant @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-social-login, Using @capgo/capacitor-social-login for the native capability in Using @capgo/capacitor-social-login, @capgo/capacitor-social-login for the implementation detail in @capgo/capacitor-social-login, @capgo/capacitor-passkey for the implementation detail in @capgo/capacitor-passkey, @capgo/capacitor-native-biometric for the implementation detail in @capgo/capacitor-native-biometric, and Authentification à deux facteurs pour les détails d'implémentation dans Authentification à deux facteurs.