-3
어떻게 작동합니까?하지만 모든 페이지에 대한 액세스를 어떻게 제한합니까?익스프레스 응용 프로그램에서 여권 인증을 사용하는 방법
어떻게 작동합니까?하지만 모든 페이지에 대한 액세스를 어떻게 제한합니까?익스프레스 응용 프로그램에서 여권 인증을 사용하는 방법
그게 작동했습니다!
var passport = require('passport')
var passportLocal = require('passport-local');
var expressSession = require('express-session');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(require('stylus').middleware(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.static(__dirname + '/node_modules/jquery/dist/'));
// uncomment after placing your favicon in /public
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser());
app.use(require('stylus').middleware(path.join(__dirname, 'public')));
app.use(expressSession({
secret: process.env.SESSION_SECRET || 'secret',
resave:false,
saveUninitialized: false
}))
passport.use(new passportLocal.Strategy(function(username,password, done){
if(username == password)
{
done(null,{ id:username, name: username });
}
else
{
done(null,null);
}
}));
app.use(passport.initialize());
app.use(passport.session());
passport.serializeUser(function(user,done){
done(null,user.id);
});
passport.deserializeUser(function(id,done){
done(null, { id:id,name: id});
});
app.use('/', index);
app.use('/', users);
app.get('/', function(req, res, next) {
res.render("login",{
isAuthenticated: req.isAuthenticated(),
user: req.user
});
});
app.post('/login',
passport.authenticate('local'), function(req, res, next) {
res.redirect("/index1");
});
하고 다음 조건부 논리 사용 :
if(req.isAuthenticated())
{
}
else
{
}
([여기]를 말한다대로 내가 다했다 https://scotch.io/tutorials/을 여기
코드입니다 쉬운 노드 인증 설정 및 로컬) 모든 것이 잘 작동합니다. 최소한 로컬 로그인 – JavaEvgen에서 작성했습니다. passportjs.org의 코드를 작성했습니다 ..... 그러나 실행할 수 없습니다. –
자습서 I를 사용해보십시오. 이전 댓글에서 보냈습니다. – JavaEvgen