Tag: 护照

NodeJS express – 如何在路由器中添加会话数据?

我需要添加一些会话数据快速路由器(使用快速会话和护照)。 我将数据正确存储到DB(mongo)中的用户logging中,并尝试将值设置为会话数据: req.user.myData = "my session data"; 不幸的是,用户数据只有在通过护照进行用户授权时才被序列化。 所以“myData”不会被存储到当前会话中。 新用户会话启动时,数据从数据库正确加载并可用。 有什么办法(我希望如此)在当前会话中提供数据?

智威汤逊validation客户端?

我有一个angular度前端的nodejs api。 API成功使用JWT和护照来保护它的端点。 我现在意识到,在令牌过期之后,我的前端仍然允许用户请求我的api端点,而不会提示他们重新input他们的详细信息以获取新的令牌。 这是我的后端如何生成令牌: function generateToken(user) { return jwt.sign(user, secret, { expiresIn: 10080 // in seconds }); } 所以要实现这个逻辑,我想我需要validationJWT令牌客户端。 Q1,这是一个明智的做法。 Q2,我正在使用的JWT库似乎需要一个公钥才能使用它的verify()函数。 我似乎没有一个公钥,只有一个秘密,我只是编了一个秘密,所以它不是由一对产生的。 我的公钥来自哪里,或者是否有另一种validation我的令牌的方式? 这一切似乎应该是显而易见的,我已经错过了一些东西,所以如果这是一个愚蠢的问题,我很抱歉,但我似乎无法find答案?

Passport中的自动failureRedirect

我的代码有问题。 当我试图login没有插入用户名和密码 POST / user / login 302 1.289 ms – 32 GET / user / hehehehehe 404 6.310 ms – 1272 如果我尝试login只有login它是相同的结果 如果我尝试使用用户名和密码login正确或不正确 500内部服务器错误 有人可以告诉我,哪里出错? 那是第一次加载failureRedirect。 在尝试login后我应该检查什么? router.post('/ create',函数(req,res,next){ var newUser = { username: req.body.username, password: req.body.password } console.log(req.body) req.checkBody('username', 'Login is required').notEmpty(); req.checkBody('password', 'Password is required').notEmpty(); var errors = req.validationErrors(); if (errors) { […]

护照-Facebook上的风帆。 没有Facebooklogin页面

Sails版本:0.12.13节点版本:7.10.1 我的身份validation控制器: facebookSignin: function (req,res,next){ passport.authenticate('facebook',{scope : 'email'})(req, res, next); }, facebookCallback: function (req,res){ passport.authenticate('facebook', { successRedirect: '/', failureRedirect: '/login' }) }, Passport.js passport.use(new FacebookStrategy({ clientID: 'XXXXXXXXXXXXXXXXX', clientSecret: 'XXXXXXXXXXXXXXXX', callbackURL: "http://localhost:1337/api/v1/auth/facebook/callback" }, function(accessToken, refreshToken, profile, done) { } )); Routes.js 'get /api/v1/auth/facebookSignin': 'AuthController.facebookSignin', 'get /api/v1/auth/facebook/callback':'AuthController.facebookCallback', 在调用此auth函数时,不会显示login页面。

护照错误 – Strategy.ParseErrorResponse

您好,我一直在试图find解决这个错误的2天,无济于事! 我已经search堆栈溢出。 这些错误与我的无关。 这是我收到的堆栈跟踪。 Error at Strategy.parseErrorResponse (/Users/jeremy/projects/thinkful_capstone_2/node_modules/passport-facebook/lib/strategy.js:196:12) at Strategy.OAuth2Strategy._createOAuthError (/Users/jeremy/projects/thinkful_capstone_2/node_modules/passport-oauth2/lib/strategy.js:376:16) at /Users/jeremy/projects/thinkful_capstone_2/node_modules/passport-oauth2/lib/strategy.js:166:45 at /Users/jeremy/projects/thinkful_capstone_2/node_modules/oauth/lib/oauth2.js:191:18 at passBackControl (/Users/jeremy/projects/thinkful_capstone_2/node_modules/oauth/lib/oauth2.js:132:9) at IncomingMessage.<anonymous> (/Users/jeremy/projects/thinkful_capstone_2/node_modules/oauth/lib/oauth2.js:157:7) at emitNone (events.js:91:20) at IncomingMessage.emit (events.js:188:7) at endReadableNT (_stream_readable.js:975:12) at _combinedTickCallback (internal/process/next_tick.js:80:11) at process._tickCallback (internal/process/next_tick.js:104:9) 这里也是我的代码: const path = require('path'); // const Strategy = require('passport-facebook').Strategy; const bodyParser = require('body-parser'); const passport = require('passport'); // […]

护照回叫500服务器错误

我一直在努力尝试护照工作。 我正在使用passport-github2,但是在尝试解决这个问题时,我尝试了passport-facebook和twitter,而且现在他们都没有工作。 我有一个简单的应用程序正在与Facebook / Twitter的签署,现在他们不再工作,所以这似乎与新版本的护照有关。 这里是我在我的github.js文件,它是通过url api/auth/github var express = require('express'), router = express.Router(), config = require('config'), githubAuth = config.get('github'), githubStrategy = require('passport-github2').Strategy, flash = require('connect-flash'), GITHUB_CLIENT_ID = githubAuth.githubClientID, GITHUB_CLIENT_SECRET = githubAuth.githubClientSecret, app = express(); //passport vars var passport = require('passport'), session = require('express-session'), methodOverride = require('method-override'), bodyParser = require("body-parser"), cookieParser = require("cookie-parser"); passport.serializeUser(function (user, […]

从模型传递JSON到路由不起作用

我试图从模型传递一个对象到我的路线,所以我可以完成我的login系统,但我没有收到任何东西。 型号代码: const AWS = require('aws-sdk'); const bcrypt = require('bcryptjs'); const config = require('../config/config.json'); var dynamoose = require('dynamoose'); const express = require('express'); var Schema = dynamoose.Schema; const USER_SCHEMA = new Schema({ username: { type: String, required: true }, firstName: { type: String }, lastName: { type: String }, email: { type: String, required: true }, […]

更新Passport + MongoDB中的用户logging

我试图通过POST请求更新护照中的用户logging。 我已经看了各种教程和以前对类似问题的回答 。 我已经实现了以下代码: var User = require("../models/user"); router.get("/settings/profile/:id", isLoggedIn, function(req,res){ res.render("profile/profilesettings", { User: req.user }); }); router.post("/settings/profile/:id", isLoggedIn, function(req,res){ User.update({_id: req.session.passport.user.id}, { email: req.body.email, imageUrl: req.body.imageUrl, bio: req.body.bio }, function (err){ console.log(err); }); res.render("profile/profilesettings", { User: req.user }); }) 这是执行更新function的forms。 <form class="form-horizontal" action="/settings/profile/<%= currentUser._id %>" method="POST"> <div class="form-group"> <label class="control-label col-sm-2" for="username">Username:</label> <div class="col-sm-10"> […]

如何允许+护照本地策略的用户字符?

我正在使用电子邮件地址的passport-local策略。 这导致与通用加部分的gmail地址的问题,例如。 example+test@gmail.com 。 运用 import passport from 'passport'; import passportLocal from 'passport-local'; import bcrypt from 'bcrypt'; var LocalStrategy = passportLocal.Strategy; passport.use(new LocalStrategy({ // by default, local strategy uses username and password, we will override with email usernameField: 'email', passwordField: 'password', passReqToCallback: true }, function (req, email, pass, cb) { // Store hash in your […]

错误:401(未授权),Passport身份validation在节点中

Passport身份validation中间件在这里使用,从loginapi我有一个jwt令牌生成,它发送到API http:// localhost:3030 / home / in标题,但它的投掷 错误 angular.js:12587 POST http:// localhost:3030 / home / 401(未经授权)。 {“data”:“Unauthorized”,“status”:401,“config”:{“method”:“POST”,“transformRequest”:[null],“transformResponse”:[ null],“jsonpCallbackParam”:“callback”,“url”:“ http:// localhost:3030 / home / ”,“headers”:{“Accept”:“application / json,text / plain, / ”}} “状态文本”:“未授权”} route.js module.exports = function(app , passport){ app.use('/login',userCtrl); app.use('/register',registerCtrl); app.use('/home', passport.authenticate('jwt', { session: false }) , homerCtrl); }; passposrt.js var JwtStrategy = require('passport-jwt').Strategy, ExtractJwt = […]