gpt4 book ai didi

node.js - 通过环回护照进行社交登录身份验证

转载 作者:太空宇宙 更新时间:2023-11-03 23:34:14 25 4
gpt4 key购买 nike

我开始在 loopback api 方面取得进展。目前我正在尝试通过社交登录为我的应用程序集成身份验证。我找到了三个页面,指示如何完成此操作,但它们的显示方式都有点不同且不清楚:github-loopback-component-passport & npmjs-loopback-component-passport & github-loopback-component-passport-example 。我对最新的流程有点困惑。任何人都可以阐明如何最好地将社交登录与环回集成吗?另外,如何测试可能需要访问 token 的路由?这是Github Repo项目的情况。

当前依赖项

"dependencies": {
"compression": "^1.0.3",
"cors": "^2.5.2",
"lodash": "^3.10.1",
"loopback": "^2.26.2",
"loopback-boot": "^2.6.5",
"loopback-component-explorer": "^2.1.0",
"loopback-connector-mysql": "^2.2.0",
"loopback-datasource-juggler": "^2.19.0",
"loopback-stormpath": "0.0.1",
"serve-favicon": "^2.0.1",
"passport": "^0.3.2",
"underscore": "^1.8.2"
}

最佳答案

根据此处提供的文档 -

https://www.npmjs.com/package/loopback-passport

您只需安装loopback-passport npm 模块并将以下内容添加到您的项目中 -

1)providers.json - 这将定义您想要使用的第三方身份验证提供商的配置,例如 facebook、google plus 等。2)在您的 server.js 中定义护照默认配置,如链接所示 -

var loopback = require('loopback');
var path = require('path');
var app = module.exports = loopback();

// Create an instance of PassportConfigurator with the app instance
var PassportConfigurator = require('loopback-passport').PassportConfigurator;
var passportConfigurator = new PassportConfigurator(app);

app.boot(__dirname);

...

// Enable http session
app.use(loopback.session({ secret: 'keyboard cat' }));

// Load the provider configurations
var config = {};
try {
config = require('./providers.json');
} catch(err) {
console.error('Please configure your passport strategy in `providers.json`.');
console.error('Copy `providers.json.template` to `providers.json` and replace the clientID/clientSecret values with your own.');
process.exit(1);
}

// Initialize passport
passportConfigurator.init();

// Set up related models
passportConfigurator.setupModels({
userModel: app.models.user,
userIdentityModel: app.models.userIdentity,
userCredentialModel: app.models.userCredential
});

// Configure passport strategies for third party auth providers
for(var s in config) {
var c = config[s];
c.session = c.session !== false;
passportConfigurator.configureProvider(s, c);
}

此后,您可以查看提供的不同客户端 SDK,以发出登录或社交身份验证请求,并使用它们来记录和注册用户。

关于node.js - 通过环回护照进行社交登录身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34549717/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com