我正在使用 nextjs 构建一个 Web 应用程序,NextAuth 用于身份验证,mongoDB 使用 mongoose 作为数据库。我在 [...nextauth].js 路径中实现了两个提供程序:Google 和 Github。另外,我已经通过连接 URL 将它连接到数据库。现在我期待的是根据我在 User 模型中提供的 Mongoose 模式自动保存用户。问题是 Google 用户是根据架构保存的,但 Github 用户不是。
我有两个问题:
- 这是将 NextAuth 与我已经连接的 Mongoose 实例连接的正确方法吗?
- 这种行为的解释是什么?与 Github 相比,为什么 google 用户遵循模式。
我试图做的是尝试阅读 NextAuth 网站中的文档,但我找不到任何解决此问题的内容,也找不到任何解释如何使用 mongoose 实现此目的的内容。
配置文件是:
providers: [
Providers.GitHub({
clientId: process.env.GITHUBID,
clientSecret: process.env.GITHUBSECRET,
}),
Providers.Google({
clientId: process.env.GOOGLE_CLIENT_ID,
clientSecret: process.env.GOOGLE_CLIENT_SECRET,
}),
],
database: process.env.MONGODB,
来自 github 的用户文档示例: Github 用户文档
来自 Google 的用户文档: Google 用户文档
由于阅读文档对我没有帮助,而且网上没有太多关于这个主题的内容,我很想听听一些指导,我可以在哪里找到更多关于 DB 连接如何与 next-auth 工作以及我如何理解它的信息。谢谢。