Je cherche depuis un certain temps et je ne vois pas comment trouver une source de documentation définitive. Lorsque je les recherche, les premiers résultats Google sont vers StackOverflow.
Existe-t-il d'autres fonctions middleware similaires à celle-ci?
Bien que cela ne soit pas documenté de manière explicite et facile à trouver, vous pouvez voir où les indicateurs isAuthenticated
et isUnauthenticated
sont définis dans le code de passeport à https://github.com/jaredhanson/passport /blob/a892b9dc54dce34b7170ad5d73d8ccfba87f4fcf/lib/passport/http/request.js#L74 .
ensureAuthenticated
n'est pas officiel, mais peut être implémenté via ce qui suit:
function ensureAuthenticated(req, res, next) {
if (req.isAuthenticated())
return next();
else
// Return error content: res.jsonp(...) or redirect: res.redirect('/login')
}
app.get('/account', ensureAuthenticated, function(req, res) {
// Do something with user via req.user
});
la raison pour laquelle elle retourne false est principalement parce qu'elle est déclarée sous la définition de l'itinéraire. je le fais dans un autre fichier donc je l'utilise comme ça
//auth check
function auth(req,res,next){
if(req.isAuthenticated()){
next();
}
else{
res.redirect("/fail");}
}
//routes
require("./routes/myroute")(app,auth);