@acceleratxr/passport-google
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

passport-google

Passport strategy for authenticating with Google access tokens using the OAuth 2.0 API.

This module lets you authenticate using Google in your Node.js applications using the Passport framework.

Installation

npm install @acceleratxr/passport-google

or

yarn add @acceleratxr/passport-google

Usage

Configure Strategy

The Google authentication strategy authenticates users using a Google account and OAuth 2.0 tokens. The strategy requires a verify callback to perform a look up of the user account given a verified OAuth 2.0 token.

JavaScript

const GoogleStrategy = require('@acceleratxr/passport-google');

passport.use(new GoogleStrategy({
    clientID: GOOGLE_APP_ID,
    clientSecret: GOOGLE_APP_SECRET,
    apiVersion: "v8"
  }, function(accessToken, refreshToken, profile, done) {
    User.findOrCreate({googleId: profile.id}, function (error, user) {
      return done(error, user);
    });
  }
));

TypeScript

import { GoogleStrategy } from "@acceleratxr/passport-google";

passport.use(new GoogleStrategy({
    clientID: GOOGLE_APP_ID,
    clientSecret: GOOGLE_APP_SECRET,
    apiVersion: "v8"
  }, function(accessToken, refreshToken, profile, done) {
    User.findOrCreate({googleId: profile.id}, function (error, user) {
      return done(error, user);
    });
  }
));

Authenticate Requests

Use passport.authenticate(), specifying google as the strategy to authenticate requests.

app.post('/auth/google',
  passport.authenticate('google'),
  function (req, res) {
    // do something with req.user
    res.send(req.user? 200 : 401);
  }
);

Client Requests

Clients can send requests to routes that use the passport-google strategy using query params. Clients must transmit the code, code_verifier, and redirect_uri parameters that are received after Google login. Clients may also optionally transmit a state parameter.

GET /auth/google?code=<TOKEN_HERE>&state=<STATE_HERE>&redirect_uri=<URI>&code_verifier=<CHALLENGE>

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.0
    0
    • latest

Version History

Package Sidebar

Install

npm i @acceleratxr/passport-google

Weekly Downloads

0

Version

1.0.0

License

MIT

Unpacked Size

19 kB

Total Files

8

Last publish

Collaborators

  • acceleratxr