webentwicklung-frage-antwort-db.com.de

Dokumentation für die Passfunktionen von "verifyAuthentication" "isAuthenticated"?

Ich habe eine Weile gesucht und kann keine definitive Dokumentationsquelle finden. Wenn ich nach diesen suche, sind die ersten Google-Ergebnisse StackOverflow.

Gibt es ähnliche Middleware-Funktionen?

43
az_

Obwohl nicht explizit dokumentiert, können Sie im Passport-Code unter https://github.com/jaredhanson/passport) sehen, wo die Flags isAuthenticated und isUnauthenticated gesetzt sind /blob/a892b9dc54dce34b7170ad5d73d8ccfba87f4fcf/lib/passport/http/request.js#L74 .

ensureAuthenticated ist nicht offiziell, kann aber folgendermaßen implementiert werden:

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
});
64
Rob DiMarco

der Grund, warum false zurückgegeben wird, liegt hauptsächlich darin, dass es unterhalb der Routendefinition deklariert wird. Ich mache es in einer anderen Datei, also benutze ich es so

//auth check
function auth(req,res,next){
    if(req.isAuthenticated()){
        next();
    } 
    else{
        res.redirect("/fail");}
}

//routes
require("./routes/myroute")(app,auth);
0
lost veteran