0

GitHub で認証されたユーザーを mongodb に保存しようとしています。マングースを使用しています。以下は私が持っているものです:

var accountSchema = new Schema({
  firstName: String,
  lastName: String,
  email: String,
  githubId: String,
  githubAccessToken: String
});

passport.use(new GitHubStrategy({
    clientID: config.GITHUB_CLIENT_ID,
    clientSecret: config.GITHUB_CLIENT_SECRET,
    callbackURL: "http://127.0.0.1/auth/github/callback",
    scope: ['user', 'public_repo', 'repo', 'gist']
  },
  function(accessToken, refreshToken, profile, done) {
     User.findOrCreate(...) // User is not defined
  });
}));

ユーザーをmongodbに保存して、サイトにアクセスするたびに認証する必要がないようにするにはどうすればよいですか? パスポート github の例では、データベースに何も保存されません。これに関するチュートリアルはありますか?

4

1 に答える 1

0

これが役立つ可能性があります: 非同期に対処する方法。パスポートとマングースの findOrCreate メソッド

基本的に、データベース操作を処理し、必要なマングースのスキーマとモデルを知っている関数 (あなたの場合は findOrCreate 関数) を定義する必要があります。

于 2012-09-15T12:56:06.683 に答える