如何解决Next-Auth:无法读取未定义的属性“适配器”
当我在 vercel.in dev 模式下部署 nextjs 应用程序时出现此错误,一切正常,但是当我在 vercel 中部署我的应用程序时出现此错误。
这个错误可能来自 next-auth,但我不明白为什么会出现这个错误。
我在 [...nextauth].js 中的代码:
export default NextAuth({
session: {
maxAge: 30 * 24 * 60 * 60,jwt: true,updateAge: 24 * 60 * 60
},providers: [
Providers.Credentials({
async authorize(credentials) {
try {
await dbConnect();
const findUser = await User.findOne({ email: credentials.email });
if (!findUser) {
throw new Error('User not found.');
}
const comparePass = await comparePassword(credentials.password,findUser.password);
if (!comparePass) {
throw new Error('Confirm password not match.');
}
return { email: credentials.email,isAdmin: findUser.isAdmin };
} catch (error) {
throw new Error(error.message);
}
}
})
]});
当请求 /api/auth/session 和 /api/auth/_log 时会出现这个错误
我很高兴有人能帮助我。
解决方法
您使用的是哪个版本的 next-auth?如果是 3.20.0 及更高版本,则问题与适配器有关。尝试在部署时检查您的 Function 日志中是否有类似内容:
如果是这样,请在将 @types/next-auth
更新到最新版本后尝试卸载 next-auth
。它为我解决了这个问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。