草庐IT

passportJS

全部标签

javascript - 为什么 Node 中的 PassportJS 不会在注销时删除 session

我无法让我的系统使用PassportJS注销。似乎正在调用注销路由,但它没有删除session。如果用户未登录特定路线,我希望它返回401。我调用authenticateUser来检查用户是否已登录。非常感谢!/*******Thisinindex.js*********///setuppassportforusername&passportauthenticationadminToolsSetup.setup(passport);//admintoollogin/logoutlogicapp.post("/adminTool/login",passport.authenticate(

android - 使用 PassportJS 验证 Android 应用程序

我一直在使用passportjs在我的Web应用程序上进行用户身份验证。现在,我正在为同一个项目开发Android客户端。当我用localstrategy登录的时候,我在Android上就成功登录了。但是,登录后,当我尝试从我服务器上的另一个URI获取数据时,我得到了“无效的用户名或密码”。当我检查req时,当android在特定URI上请求数据时,没有req.user对象。当从Web应用程序访问相同的URI时,它包含req.user对象上的用户数据。Android的情况下什么都没有。我了解到,对于Android,我们进行基于token的身份验证。然后我在Passportjs中遇到了不

node.js - 使用 mongodb 和 nodejs 在 passportjs 中授权多个本地策略

我正在nodejs中使用passportjs和mongodb实现多种本地身份验证策略。为了实现身份验证,我在deserializeUser中使用了中间件。像这样的东西。我有两种类型的用户,一种是User,另一种是Vendor。供应商将销售产品,用户将购买产品。我为具有不同本地策略名称的供应商和用户创建了不同的架构。身份验证对我来说很好。module.exports=function(passport){//Passportneedstobeabletoserializeanddeserializeuserstosupportpersistentloginsessionspassport

node.js - 将 redis 与 Passportjs 一起用于 session 不起作用

我正在将Nodejs与ExpressJS结合使用。我的应用程序部署在heroku上,在那里我为我的应用程序安装了“redistogo”附加组件。我正在使用PassportJS来帮助进行身份验证和session。我想在用户登录后使用redis来存储session,这样如果应用程序重新启动,登录的用户就不会丢失他的session。这是我的代码(为简洁起见,已精简到最低限度):varRedisStore=require('connect-redis')(express);app.configure('development',function(){varredisUrl=url.parse(

node.js - NodeJS ExpressJS PassportJS - 仅用于管理页面

我正在使用NodeJS、ExpressJS、Mongoose、passportJS和connect-ensure-login。对用户进行身份验证非常有效。....varpassport=require('passport'),LocalStrategy=require('passport-local').Strategy,ensureLoggedIn=require('connect-ensure-login').ensureLoggedIn;varapp=express();...app.use(passport.initialize());app.use(passport.sess

node.js - NodeJS ExpressJS PassportJS - 仅用于管理页面

我正在使用NodeJS、ExpressJS、Mongoose、passportJS和connect-ensure-login。对用户进行身份验证非常有效。....varpassport=require('passport'),LocalStrategy=require('passport-local').Strategy,ensureLoggedIn=require('connect-ensure-login').ensureLoggedIn;varapp=express();...app.use(passport.initialize());app.use(passport.sess

node.js - PassportJS serializeUser 和 deserializeUser 执行流程

我正在使用带express的passportJS通过本地策略对用户进行身份验证。我看过几篇关于如何设置Passport和执行流程的文章。虽然Passport的大部分内容都可以通过搜索找到,但用户的序列化和反序列化让我感到困惑。我了解它用于将用户信息保存在session中以进行持久登录。我的序列化和反序列化代码是passport.serializeUser(function(user,done){done(null,user.id);});passport.deserializeUser(function(id,done){User.findById(id,function(err,us

node.js - PassportJS - 自定义回调并将 Session 设置为 false

是否可以使用自定义回调并禁用session?在文档中,它显示了如何禁用session和自定义回调,但我如何组合它们?app.get('/login',function(req,res,next){passport.authenticate('local',function(err,user,info){if(err){returnnext(err);}if(!user){returnres.redirect('/login');}req.logIn(user,function(err){//I'mgettinganerrorhere//[Error:Failedtoserializeu

node.js - 如何更新passportjs设置的req.user session 对象?

我已经尝试了很多天,但我所有的测试都失败了......我平台上的用户通过使用passportjs策略(paypal、facebook、google...)连接他们。当用户连接时,我将他的昵称写在标题的右侧。header的html代码是从handlebars模板生成的,当这个部分由expressjs提供时,我将req.usersession对象发送到模板,以便写入昵称和其他信息......顺便说一句,这很好用,但是当用户从他的个人资料更新他的昵称时我遇到了问题,我无法在服务器端更新session对象,如果用户重新加载页面,旧昵称会再次出现。而且我不想每次用户加载页面时都向数据库请求用户信

node.js - PassportJS session 混淆了

在我们的ExpressJS应用程序中,当推送到生产服务器时,Passportsession会随机混淆。即使我没有退出session,该页面也可以随机加载另一个用户的View。不做任何其他事情,再次刷新将带我回到我自己的帐户(也是随机的)。这种现象发生在我们的两个Web应用程序上,这些应用程序由两个不同的用户按照他们网站上的Passport指南编写。两个网络应用都使用Facebook连接/API。这发生在Redis和Filesession存储上。我看到了apostaboutusingglobalvariables:我们确定我们只使用本地范围。是不是我们做错了什么?更新v1在一个应用上,我