- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 LocalStrategy 回调中写了 console.log 但它从未调用过。我将 Sequelize 用于 ORM (MySQL)。
Passport .js
const LocalStrategy = require('passport-local').Strategy
const passport = require('passport')
const bcrypt = require('bcrypt')
const UrunModel = require('../models/Urun')
console.log('File is Called') // If my require is wrong. But this log worked.
passport.use(new LocalStrategy({
usernameField: 'mail',
passwordField: 'pw1'
},
(username, password, done) => {
console.log('Worked!') // Never Called
UrunModel.findOne({
where : {
UrunName : 'testuser',
UrunDesc : '123456'
}
})
}
));
passport.serializeUser(function(user, done) {
done(null, user.id);
});
passport.deserializeUser(function(id, done) {
User.findById(id, function(err, user) {
done(err, user);
});
});
索引.js
const session = require('express-session');
const bodyParser = require('body-parser')
const urlencoded = bodyParser.urlencoded({extended:false})
const passport = require('passport')
app.use(session({
secret: 'keyboardSecrIncKey',
resave: false,
saveUninitialized: true,
}))
app.use(passport.initialize())
app.use(passport.session())
require('./config/passport') //require my passport.js
app.post('/test',(req,res,next) => {
passport.authenticate('local',{
successRedirect: '/worked',
failureRedirect: '/notworked'
})(req,res,next)
})
它重定向我的“/notworked” url。我看了 3 或 4 个视频,但我的代码几乎相同。
我哪里失败了?请解释我的错误。
最佳答案
默认情况下,LocalStrategy 希望在名为用户名和密码的参数中找到凭据。如果您的站点更喜欢以不同方式命名这些字段,则可以使用选项来更改默认值。
你使用mail
和pw1
参数,检查req.body
,因为req.body
没有在正文中有这个参数。
如果你更换你的问题将得到解决
{
usernameField: 'mail',
passwordField: 'pw1'
}
与
{
usernameField: 'username',
passwordField: 'password'
}
您还可以检查 documentation
关于javascript - Passport LocalStrategy 从未调用过 Express,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65630974/
我正在使用 passport.js 进行身份验证,并尝试设置本地策略。但是,每当我运行我的代码时,我都会收到一条错误消息,提示 localStrategy 不是构造函数。 代码: // config/
我正在创建一个像这样的策略对象: var strat = new LocalStrategy({ usernameField: 'email' },
我正在尝试在 Passport 上注册后重定向用户 passport.use('local-signup', new LocalStrategy({ usernameField : 'username
我尝试使用express4/passportjs设置一个简单的本地策略身份验证,但从未调用身份验证函数:这是我的代码 var passport = require('passport'); var L
我是 javascript、node 和 passportjs 的新手。对不起,如果这是不正确的。我想在我的 Passport 本地策略中使用 3 个参数:用户名、电子邮件、密码。可能吗?如果是怎么办
我在 LocalStrategy 回调中写了 console.log 但它从未调用过。我将 Sequelize 用于 ORM (MySQL)。 Passport .js const LocalStra
我已经阅读了几篇文章,解释了 Passport 身份验证的流程并理解了大部分概念。但是,仍有一些模糊的地方需要解释,以便我可以一劳永逸地了解 Passport。 让我们看看这个实现 的简单示例用户注册
我对 Web 开发比较陌生,我正在使用 NodeJs 和 Express 创建一个网站,在注册时会要求提供用户名和电子邮件。目前,它只接受用户名登录。我正在使用 Passport 和 LocalStr
我想了解 LocalStrategy 是如何工作的。 这是我的服务器文件的一部分: var passport = require('passport'); var express = require(
存有 express Passport LocalStrategy 测试,可能应模拟请求。 test('should Test password Login auth', async (done) =
我遇到一个问题,如果我尝试不使用用户名或密码登录,我的 passport.use 函数根本不会被调用。 下面是我运行 passport.authenticate 的特快专递路线。 app.post('
我的 Express.js 小应用程序中的 Passport.js 一直存在问题:无论我在 LocalStrategy 中放入什么,我总是被重定向到 failureRedirect,显然甚至没有经过
在查看许多 PassportJS 示例时,我对 BasicStrategy 的使用感到非常困惑。 有些人用它来做用户名/密码认证,其他人用它来做clientID/clientSecret认证,还有一些
我对这些策略有点困惑,不清楚它们之间的区别,以及我需要在我的应用程序中使用哪些策略? (甚至一般需要),因为我只需要将用户凭证交换为token,然后打算使用bearer strategy 最佳答案 L
我正在使用passport.js LocalStrategy 来验证用户名和密码。但现在我又多了一个字段来验证其是否处于事件状态:true/false(无论用户是否处于事件状态)。下面的代码显示了用户
我正在学习express框架,其中包括passport、passport-session。现在我收到此错误 类型错误:LocalStrategy 需要验证回调(检查下图): 告诉你,这个错误属于pas
我正在使用 Passport.js 实现本地身份验证。我已经实现了 Github Oauth,这很好,但由于某种原因,本地策略失败并出现上述错误。到目前为止,我找不到任何问题的根源。我读过其他帖子,但
我开始使用 PassportJs/ExpressJs 应用程序进行身份验证 我有两种不同的用户和管理员模型 这是passport.js代码 passport.use('admin', new Loca
当我尝试运行代码时,它给出了引用错误:LocalStrategy 未定义。 这是我第一次使用node.js,但我遇到了困难。我非常感谢您提前提供的帮助。 我将所有代码放在一个片段中,以便您可以轻松浏览
我是一名优秀的程序员,十分优秀!