Heim  >  Artikel  >  Web-Frontend  >  Nutzen Sie die Leistungsfähigkeit von Google OAuth mit Passport.js: Eine Schritt-für-Schritt-Anleitung

Nutzen Sie die Leistungsfähigkeit von Google OAuth mit Passport.js: Eine Schritt-für-Schritt-Anleitung

WBOY
WBOYOriginal
2024-08-12 18:36:35957Durchsuche

Hallo, liebe Entwickler! ? Sind Sie bereit, Ihr Authentifizierungsspiel zu verbessern? Heute tauchen wir ein in die Welt von Google OAuth 2.0 und wie man es mit Passport.js implementiert. Vertrauen Sie mir, Ihre Benutzer werden Ihnen für dieses reibungslose und sichere Anmeldeerlebnis danken!

Unlocking the Power of Google OAuth  with Passport.js: A Step-by-Step Guide

Warum Google OAuth 2.0? ?

Bevor wir loslegen, sprechen wir darüber, warum Google OAuth 2.0 so eine große Sache ist:

1. Benutzerfreundlich: Keine Kopfschmerzen mehr wegen „Passwort vergessen“!
2. Fort Knox-Sicherheit: Nutzen Sie die erstklassigen Sicherheitsprotokolle von Google.
3. Vertrauensverstärker: Benutzer fühlen sich bei der Verwendung ihrer Google-Konten sicherer.

Klingt gut, oder? Fangen wir an!

Schritt 1: Bereiten Sie sich vor! ?️

Das Wichtigste zuerst: Installieren wir unsere Tools. Starten Sie Ihr Terminal und führen Sie Folgendes aus:

npm install passport passport-google-oauth2 express-session

Diese Pakete sind Ihre neuen besten Freunde für die Implementierung von Google OAuth 2.0.

Schritt 2: Google Developer Console-Abenteuer ?️

Zeit, Ihr Projekt in der Google Developer Console einzurichten. Hier ist deine Schatzkarte:

1. Gehen Sie zur Google Developer Console.
2. Erstellen Sie ein neues Projekt (geben Sie ihm einen coolen Namen!).
3. Navigieren Sie zu „APIs & Services > Anmeldeinformationen“.
4. Klicken Sie auf „Anmeldeinformationen erstellen“ und wählen Sie „OAuth 2.0-Client-IDs“.
5. Richten Sie Ihren Einwilligungsbildschirm ein (vergessen Sie nicht, für das Symbol zu lächeln!).
6. Konfigurieren Sie Ihre OAuth 2.0-Client-ID (Webanwendungstyp).
7. Fügen Sie Ihren Weiterleitungs-URI hinzu (z. B. http://localhost:3000/auth/google/callback).

Profi-Tipp: Bewahren Sie Ihre Kunden-ID und Ihr Kundengeheimnis sicher auf. Sie sind wie die Schlüssel zu Ihrem OAuth-Königreich!

Schritt 3: Passport-Konfigurationsmagie ✨

Jetzt streuen wir etwas Passport.js-Magie in unsere App:

const passport = require('passport');
const GoogleStrategy = require('passport-google-oauth20').Strategy;

passport.use(new GoogleStrategy({
    clientID: process.env.GOOGLE_CLIENT_ID,
    clientSecret: process.env.GOOGLE_CLIENT_SECRET,
    callbackURL: "http://localhost:3000/auth/google/callback"
  },
  function(accessToken, refreshToken, profile, done) {
    // Your user-saving logic goes here!
    User.findOrCreate({ googleId: profile.id }, function (err, user) {
      return done(err, user);
    });
  }
));

// Don't forget to serialize and deserialize your users!
passport.serializeUser((user, done) => {
  done(null, user.id);
});

passport.deserializeUser((id, done) => {
  User.findById(id, (err, user) => {
    done(err, user);
  });
});

Schritt 4: Weg zum Erfolg ?️

Lassen Sie uns unsere Authentifizierungs-Highways einrichten:

const express = require('express');
const passport = require('passport');
const app = express();

app.use(passport.initialize());
app.use(passport.session());

// The gateway to Google OAuth
app.get('/auth/google',
  passport.authenticate('google', { scope: ['profile', 'email'] })
);

// Welcome back! Handle the callback
app.get('/auth/google/callback',
  passport.authenticate('google', { 
    successRedirect: '/auth/google/success', 
    failureRedirect: '/auth/google/failure' 
  })
);

// Success and failure destinations
app.get('/auth/google/success', (req, res) => { 
  res.send('Welcome aboard! ?'); 
});

app.get('/auth/google/failure', (req, res) => { 
  res.send('Oops! Something went wrong. ?'); 
});

app.listen(3000, () => {
  console.log('Server is up and running! ?');
});

Schritt 5: Startzeit! ?

Richten Sie Ihre Umgebungsvariablen ein (GOOGLE_CLIENT_ID und GOOGLE_CLIENT_SECRET), und schon kann es losgehen!

node app.js

Navigieren Sie zu http://localhost:3000/auth/google und beobachten Sie, wie die Magie geschieht!

Zusammenfassung ?

Und da haben Sie es, Leute! Sie haben gerade Google OAuth 2.0 mit Passport.js implementiert. Ihre Benutzer können sich jetzt mit ihren Google-Konten anmelden und so ein nahtloses und sicheres Erlebnis genießen.

Denken Sie daran, das ist erst der Anfang. In einer Produktions-App möchten Sie weitere Funktionen hinzufügen wie:

  • Richtige Fehlerbehandlung
  • Benutzerdatenspeicherung in einer Datenbank
  • Zusätzliche Authentifizierungsoptionen

Haben Sie versucht, OAuth in Ihren Projekten zu implementieren? Vor welchen Herausforderungen standen Sie? Schreiben Sie Ihre Gedanken unten in die Kommentare – ich würde gerne von Ihren Abenteuern im Land der Authentifizierung hören!

Viel Spaß beim Codieren und mögen Ihre Anmeldungen immer reibungslos verlaufen! ??‍???‍?

Das obige ist der detaillierte Inhalt vonNutzen Sie die Leistungsfähigkeit von Google OAuth mit Passport.js: Eine Schritt-für-Schritt-Anleitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn