ユーザーが ExpressJS/ PassportJSアプリにログインしているかどうかを確認するにはどうすればよいですか? PassportJS はセッションを自動的に設定すると思いますか? しかし、それはどの変数を設定しますか?
4152 次
3 に答える
2
session.passport.user
呼び出し時に設定され、呼び出し時req.logIn
に設定解除されますreq.logOut
sessionStore = new MongoStore # RedisStore or whatever
sessionStore.get data.sessionID, (err, session) ->
if session.passport.user?
# Logged in
于 2012-07-17T01:25:56.900 に答える
0
正しく設定されていれば、セッション作成ルートに POST した後、HTTP 応答で Set-Cookie 行を確認できるはずです (curl -v -d "username=whoever&password=supersecret" http://localhost:3000/session/new
ユーザー名、パスワード、および URL を適切に置換してみてください)。
ただし、質問に直接答えるには、デフォルトで と が表示されている必要がconnect.sid
ありremember_token
ます。このセットが表示されていなくても、認証戦略で有効なユーザー オブジェクトをダンプできる場合は、app.configure
呼び出しに次の行があることを確認してください。
app.use(express.cookieParser());
app.use(express.session({secret: "replace"}); // lots of options here, read up
app.use(passport.session());
于 2012-06-29T21:29:08.037 に答える
0
connect.jsrequest.user
では、ミドルウェアで確認する必要があります
于 2013-12-04T21:08:33.863 に答える