0

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

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

4

1 に答える 1

5

どうやら、認証方法を連結することが可能であるため、解決策は次のようになります。

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

于 2016-11-24T01:20:27.397 に答える