Passport-Google 项目教程

Passport-Google 项目教程

passport-googleGoogle (OpenID) authentication strategy for Passport and Node.js.项目地址:https://gitcode.com/gh_mirrors/pa/passport-google

1. 项目的目录结构及介绍




passport-google/


├── lib/


│   ├── index.js


│   ├── strategy.js


├── test/


│   ├── strategy.test.js


├── examples/


│   ├── express/


│       ├── app.js


│       ├── config.js


├── package.json


├── README.md

lib/: 包含项目的主要逻辑文件。
index.js: 项目的入口文件。strategy.js: 实现 Google OAuth 认证策略的文件。 test/: 包含项目的测试文件。
strategy.test.js: 针对认证策略的测试文件。 examples/: 包含示例应用。
express/: 使用 Express 框架的示例应用。
app.js: 示例应用的启动文件。config.js: 示例应用的配置文件。 package.json: 项目的依赖和脚本配置文件。README.md: 项目的说明文档。

2. 项目的启动文件介绍

examples/express/app.js 中,我们可以看到示例应用的启动文件。以下是关键部分的代码:




const express = require('express');


const passport = require('passport');


const GoogleStrategy = require('passport-google-oauth').OAuth2Strategy;


const config = require('./config');


 


const app = express();


 


passport.use(new GoogleStrategy({


  clientID: config.google.clientID,


  clientSecret: config.google.clientSecret,


  callbackURL: config.google.callbackURL


}, (accessToken, refreshToken, profile, done) => {


  // 处理用户认证后的逻辑


  return done(null, profile);


}));


 


app.use(passport.initialize());


app.use(passport.session());


 


app.get('/auth/google', passport.authenticate('google', {


  scope: ['https://www.googleapis.com/auth/userinfo.profile']


}));


 


app.get('/auth/google/callback', passport.authenticate('google', {


  successRedirect: '/',


  failureRedirect: '/login'


}));


 


app.listen(3000, () => {


  console.log('Example app listening on port 3000!');


});

passport.use(): 配置 Google OAuth 策略。app.get(‘/auth/google’): 定义 Google 认证的请求路由。app.get(‘/auth/google/callback’): 定义 Google 认证回调的路由。app.listen(3000): 启动应用并监听 3000 端口。

3. 项目的配置文件介绍

examples/express/config.js 中,我们可以看到示例应用的配置文件。以下是关键部分的代码:




module.exports = {


  google: {


    clientID: 'YOUR_GOOGLE_CLIENT_ID',


    clientSecret: 'YOUR_GOOGLE_CLIENT_SECRET',


    callbackURL: 'http://localhost:3000/auth/google/callback'


  }


};

clientID: Google 应用的客户端 ID。clientSecret: Google 应用的客户端密钥。callbackURL: 认证成功后的回调 URL。

以上是 passport-google 项目的基本教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这些内容能帮助你更好地理解和使用该项目。

passport-googleGoogle (OpenID) authentication strategy for Passport and Node.js.项目地址:https://gitcode.com/gh_mirrors/pa/passport-google

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...