我想访问我的护照策略在其回调中指定的消息,如下所示:done(null, false, { message: 'No such user.' });.到目前为止,我发现这些消息可以通过将选项传递failureFlash: true给passport.authenticate()函数来显示,其使用再次需要connect-flash安装中间件.所以我安装了模块并添加var flash = require('connect-flash);到我的源代码,以及app.use(flash());我的快递应用程序的配置方法.但它仍然因某个方法.flash()不可用的错误而崩溃.我错过了什么?
更多代码:
var http = require('http');
var express = require('express');
var passport = require('passport');
var googleStrategy = require('passport-google').Strategy;
var flash = require('connect-flash');
passport.serializeUser(function (user, done) {
done(null, user);
});
passport.deserializeUser(function (obj, done) {
done(null, obj);
});
passport.use(new googleStrategy(
{
returnURL: 'http://localhost:123456/auth/google/return',
realm: 'http://localhost:123456/'
},
function(identifier, profile, done) {
process.nextTick(function () {
User.findOne({ ID: identifier }, …Run Code Online (Sandbox Code Playgroud)