如何使用Node-Express-Passport/"用于登录和登录主页
How with Node - Express - Passport do I use "/" for login and logged-in homepage?
我想用Node.js、Express.js和Passport.js制作一个应用程序,如果你没有登录,它会在主页上显示一个登录表单(现在,也许以后会是一个提供多种身份验证策略的页面)。但如果你登录了,它会加载主页。
Passport.js文档似乎非常清楚如何将登录和主页URL分开,因此只需要复制代码就可以在"/login"处创建一个登录表单,如果登录失败,该表单将在"/loging"处重定向到自己,并显示一条闪显消息,如果您的凭据被检查出来,则会重定向到"/"。然而,我不知道如何从一个URL提供集成服务,如果你没有登录,网站主页会呈现一个"请通过这些策略之一验证你自己"页面(或者可能每个策略链接到一个登录页面,但我现在对这个问题不感兴趣),如果用户登录,则会呈现实际登录的主页内容。
我该怎么做?假设我现在正在使用passport local的用户名密码策略,同时我正在努力确定与Facebook建立关系的一些细节。
您可以在主路由上检查req.user
并相应地重定向。
app.get('/', function mainRoute(req, res, next) {
if (!req.user) res.redirect('/login');
else res.render('home');
});
相关文章:
- Facebook登录不适用于iOS的应用内浏览器
- asp.net mvc中的javascript验证不适用于登录表单
- 用于登录和注销功能的Backbone.js架构
- 用于登录/注册Angular应用程序的模式/对话框
- 如何使jQuery代码不适用于已登录的Wordpress用户
- 是否有任何twitter功能用于登录应用程序
- Google Oauth2 使用 javascript API 登录不适用于 IE
- 如何使用 ExtJS6 cookie 提供程序和状态管理登录表单.管理器 + OL3 用于网络制图应用程序
- jQuery悬停或JavaScript鼠标退出事件,用于菜单“登录”
- 用于显示Facebook登录按钮不起作用的Javascript代码
- 用户登录不适用于节点.js和猫鼬
- o身份验证 2 用于授权和自动登录
- 如何将Facebook登录用于应用程序
- 我想获取控制台中显示的文本,并将该文本用于登录页面中的登录用户名
- Facebook 登录 JavaScript sdk 不适用于publish_actions范围
- 主干.js具有用于创建用户和登录用户的验证的模型
- AJAX+JSON用于简单登录
- Meteor与帐户谷歌包-登录不适用于iOS(Safari)
- Ajax未达到'成功'用于登录表单
- $window.session用于登录和注销的存储(基于令牌);