2016-11-22 8 views
0

フェザー認証を使用すると、設定可能なユーザ名フィールドを使用してユーザを認証できます。現時点では、ユーザーモデルのフィールドusernameまたはemailのいずれかを使用するように認証を構成できますが、私はusernameemailの両方のオプションをユーザーに提供したいと考えています。ユーザ名または電子メールによる認証

これを行う最善の方法は何ですか?

答えて

2

のような解決策が何かする必要がありますので、どうやら、認証方法を連結することが可能である:より完全な例は、GitHubの上で見つけることができ

app.configure(auth({ secret: 'super secret' })) 
    .configure(local()) // defaults usernameField to 'email' 
    .configure(local({ // support username 
    name: 'local-username', 
    usernameField: 'username' 
})); 

https://github.com/jaredhanson/passport-local/pull/148#issuecomment-261506180

関連する問題