小编Dyl*_*ein的帖子

如何使用 next-auth 添加现有用户帐户与 google Oauth 帐户的链接?

努力寻找一种使用 next-auth 将现有用户与 google oAuth 链接的方法,这是我的情况。

我认为对于我的情况来说,流程有点奇怪;用户可以选择在注册之前创建一个“项目”。基本上,他们创建一个项目,当他们准备好时,他们可以“保存项目”。这将在我的 Mongo 数据库中创建一个“项目”以及一个用户(没有密码,这一步是必要的,以便我们能够使用他们的信息创建销售线索)。然后,一旦他们保存了项目,就会进入注册模式,他们可以在其中使用凭据或 google Oauth 登录。

所以问题是我收到此错误“OAuthAccountNotLinked”,因为用户电子邮件已存在于 Mongo 中,我需要用户保持不变,因为它已连接到他们已经创建的项目。因此,当他们使用 Google oAuth 登录时,我需要将他们与已创建的用户链接。

我还没有找到任何好的解决方案来解决我的问题,我对 next-auth 还比较陌生,所以任何建议都会有所帮助!

这是我的下一个身份验证文件,不确定它会有多大帮助,但让我知道可能会更新什么。

const options = {
    providers: [
        Providers.Credentials({
            name: 'Custom Provider',
            credentials: {
                username: { label: 'Email', type: 'text', placeholder: 'username' },
                password: { label: 'Password', type: 'password', placeholder: 'password' }
            },
            async authorize(credentials) {
                try {
                    const res = await fetch(
                        `${
                            process.env.NODE_ENV === 'development'
                                ? process.env.NEXTAUTH_URL
                                : process.env.NEXTAUTH_URL_2
                        }/api/auth/signin`,
                        {
                            method: 'POST',
                            body: JSON.stringify(credentials)
                        }
                    );
                    const …
Run Code Online (Sandbox Code Playgroud)

oauth mongodb reactjs next.js next-auth

6
推荐指数
0
解决办法
1651
查看次数

标签 统计

mongodb ×1

next-auth ×1

next.js ×1

oauth ×1

reactjs ×1