フェザー認証を使用すると、構成可能なユーザー名フィールドを使用してユーザーを認証できます。現時点では、ユーザー モデルのusername
ORemail
フィールドのいずれかを使用するように認証を構成できますが、両方のオプションをユーザーに提供したいと考えusername
ていemail
ます。
これを行う最良の方法は何ですか?
フェザー認証を使用すると、構成可能なユーザー名フィールドを使用してユーザーを認証できます。現時点では、ユーザー モデルのusername
ORemail
フィールドのいずれかを使用するように認証を構成できますが、両方のオプションをユーザーに提供したいと考えusername
ていemail
ます。
これを行う最良の方法は何ですか?
どうやら、認証方法を連結することが可能であるため、解決策は次のようになります。
app.configure(auth({ secret: 'super secret' }))
.configure(local()) // defaults usernameField to 'email'
.configure(local({ // support username
name: 'local-username',
usernameField: 'username'
}));
より完全な例は GitHub にあります: https://github.com/jaredhanson/passport-local/pull/148#issuecomment-261506180