如何解决在 Next Auth 中扩展有关 OAuth 登录的用户数据
我正在尝试在我的 index.js 中获取这些数据以供使用。我正在使用 promise 来扩展我的数据库用户的信息,如下所示:
Providers.Google({
clientId: process.env.GOOGLE_ID,clientSecret: process.env.GOOGLE_SECRET,async profile(profile,tokens) {
//setup query values
let qv = profile;
let userLookup = await query(
prepare`SELECT * FROM users WHERE Nickname = 'Test' LIMIT 1`
);
if (!Object.keys(userLookup.data).length) {
if (process.env.DEBUG >= 1) {
console.log("[DEBUG] Sign In: User couldn't be found");
}
return Promise.reject(
new Error(
"We couldn't find your account,please check your email address and password and try again"
)
);
}
//de-nest the user data
userLookup = userLookup.data[0];
console.log(userLookup);
return {
id: profile.id,name: userLookup.Nickname,email: profile.email,image: profile.picture,};
},
在我的索引中,我只是使用模板示例。
<div>
{loading && <div>Loading...</div>}
{session && (
<>
<p>Welcome,{session.user.name}</p>
<br />
<img src={session.user.image} alt="" />
</>
)}
{!session && (
<>
<p>Please Sign in</p>
</>
)}
</div>
如何从上面访问 name: userLookup.Nickname,
甚至像这样扩展它。
return {
id: profile.id,anotherVariable: userLookup.anotherVariable
};
谢谢。 只是不知道它从哪里返回或如何访问它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。