Tag: passport.js

设置passport-jwtauthentication

我用express API设置passport-jwt时遇到了一些麻烦。 在前端,我使用ember.js发送到/auth路由应validation会话的凭证,然后ember.js的库将处理在随后的请求中发送令牌。 我松散地遵循了这个教程 ,而是用passport-jwtreplace了他们的passport-http ,并在git回购中用例子来设置它。 在我的server.js我需要护照,并使用app.use(passport.initialize());将其设置为中间件app.use(passport.initialize()); 在server.js文件的底部,我用app.use('/api/v1', '/app/routes/api');调用我的apipath文件app.use('/api/v1', '/app/routes/api'); 我的app/routes/api.js文件看起来有添加和获取这样的用户部分 router.route('/users') .post(function(req,res) { user.addUser(req,res) }) .get(function(req,res) { user.getAllUsers(req,res) }); 哪些是在api/user.js文件中的导出引用,如下所示 var mongoose = require('mongoose'); var User = require('../../models/user'); module.exports.addUser = function(req, res) { var user = new User(req.body.user); user.save(function(err) { if (err) res.send(err); res.json({user: user}); }); }; module.exports.getAllUsers = function(req, res) { User.find(function(err, users) […]

如何删除快递+护照js注销cookie?

我想“在注销时删除cookies”。 我无法做到这一点。 我googlesearch答案,并find以下方法: 为cookie分配新的过期date res.cookie('connect.sid', '', {expires: new Date(1), path: '/' }); 使用下面的行删除cookie res.clearCookie('connect.sid', { path: '/' }); 我单独尝试了两种方法,但不删除cookie。 这是我的代码: routes.js module.exports = function(app, passport, session){ app.get('/', function(req, res) { res.render('index.ejs'); }); app.get('/login', function(req,res){ res.render('login.ejs',{message:req.flash('loginMessage')}); }); app.get('/signup',checkRedirect , function(req, res) { res.render('signup.ejs',{message: req.flash('signupMessage')}); }); app.get('/profile', isLoggedIn, function(req,res) { res.render('profile.ejs', { user :req.user }); }); app.post('/signup', […]

Nodejs – Passport身份validation始终返回失败redirect

我正在通过passportJs进行表单login,它总是返回failureRedirect。 我有这个问题在堆栈溢出search,但仍然没有正确的答案。 这是我的代码: 表格制作玉石: form(method='post', action='/users/login', enctype='multipart/form-data') .form-group label Username input.form-control(name='username', type='text' placeholder='Enter Username') .form-group label Password input.form-control(name='password', type='password' placeholder='Enter password') input.btn.btn-default(name='submit', type='submit', value='Login') 路由器Hanlde使用expression式框架formsNodejs和护照中间件: passport.serializeUser(function(user, done) { done(null, user.id); }); passport.deserializeUser(function(id, done) { User.getUserById(id, function(err, user) { done(err, user); }); }); passport.use(new LocalStrategy({ usernameField: 'username', passwordField: 'password' }, function(username, password, done) { User.getUserByUsername(username, function(err, […]

nodejs护照 – 脸书authentication

我创build了一个Facebook应用程序,只有我使用。 现在我已经成功了,但是除了我以外没有其他人能够login。 他们得到以下错误。 FacebookTokenError: This authorization code has been used. at Strategy.parseErrorResponse (/var/www/html/project/node_modules/passport-facebook/lib/strategy.js:199:12) at Strategy.OAuth2Strategy._createOAuthError (/var/www/html/project/node_modules/passport-facebook/node_modules/passport-oauth2/lib/strategy.js:345:16) at /var/www/html/project/node_modules/passport-facebook/node_modules/passport-oauth2/lib/strategy.js:171:43 at /var/www/html/project/node_modules/passport-facebook/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:177:18 at passBackControl (/var/www/html/project/node_modules/passport-facebook/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:123:9) at IncomingMessage.<anonymous> (/var/www/html/project/node_modules/passport-facebook/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:143:7) at IncomingMessage.EventEmitter.emit (events.js:117:20) at _stream_readable.js:920:16 at process._tickCallback (node.js:415:13) 这里可能是什么问题。 应用程序是活的。

护照js本地authentication使用sequelize

我正尝试使用护照本地身份validation与sequ​​elize。 当我提交login表单时,请求/响应周期永不结束,terminal中没有错误信息。 这里是我所有的代码: app.js var Sequelize = require('sequelize'), express = require('express'), bodyParser = require('body-parser'), cookieParser = require('cookie-parser'), passport = require('passport'), LocalStrategy = require('passport-local').Strategy, User = require('./models/users'); …….. and other imports….. //route import , model injection var auth = require('./routes/auth')(User); ………………….. app.use(session({ store: new RedisStore(), secret: 'keyboard cat', resave: false, saveUninitialized: false })); app.use(passport.initialize()); app.use(passport.session()); passport.serializeUser(function(user, […]

NodeJS注销所有用户会话

我很有兴趣closures (注销/注销) nodeJS中的 所有用户会话 。 req.logout()仅closures用户的当前会话。 但是对于我的安全面板,我想添加closures所有用户会话的选项。 我怎样才能做到这一点? 我正在使用MEAN.JS框架 。 用passport.js库和mongoDB保存会话: // Express MongoDB session storage app.use(session({ saveUninitialized: true, resave: true, secret: config.sessionSecret, cookie: { maxAge: 15778476000, httpOnly: true, secure: false }, key: 'sessionId', store: new mongoStore({ db: db.connection.db, collection: config.sessionCollection }) })); 非常感谢你。

节点中持久的cookies

如果我理解正确Express session只保存session cookie session id ,并从数据存储检索基于该id的信息。 当用户closures浏览器时,该信息将丢失。 如果我使用以下方法,我不会磨炼会话cookie: res.cookie(); 我怎样才能包括没有丢失的正规cookies?

logout()不能使用passport.js,express.js,AngularJs

猜猜我没有足够的睡眠,无法弄清楚。 遵循weblogin在线样本,loginbutton的作品,而不是注销button,注销不在server.js调用。 非常感谢 ! app.config(['$routeProvider', function($routeProvider) { $routeProvider.when('/login', { templateUrl: '/partials/login.html', controller: 'authController' }); $routeProvider.when('/logout', { templateUrl: '/partials/logout.html', controller: 'authController', }); … ); app.controller('authController', function($scope, $http, $location, $window) { $scope.user = {username:'', password:''}; $scope.alert = ''; $scope.login = function(user) { $http.post('/auth/login', user). success(function(data) { console.log("you are at /auth/login 0"); $scope.loggedUser = data; $window.location.href = "/index.html#/systemStatus"; […]

我为什么要使用PassportJS?

看着做一个简单的Angular-Node应用程序,当然我也遇到过PassportJS的auth。 看着这个网站,我发现很难理解为什么我需要它,或者它为我做了什么? 我的用户将使用用户名和密码login。 为什么我不能在数据库中find匹配的logging,如果需要设置会话并返回响应? 我为什么要用这个护照呢?

快递,护照:发送后不能设置标题

我仍然是节点和webdev的noob,但努力! 我得到这个错误:发送后无法设置标题 同时使用passport.js和bcryptjs比较密码validation方法 路线/ login.js var express = require('express') var router = express.Router() var mongoose = require('mongoose') var User = mongoose.model('User') var passport = require('passport') router.post('/', function (req, res, next){ passport.authenticate('local', function(err, user, info){ if(err){ return next(err); } if(user){ return res.json({token: user.generateJWT()}); } else { return res.status(401).send(info) } })(req, res, next); }); module.exports = router […]