NodeJS 即使在成功验证后,Supabase会话仍为空/未定义

00jrzges  于 2023-08-04  发布在  Node.js
关注(0)|答案(1)|浏览(101)

我有一个Express服务器,现在登录到Supabase。身份验证是成功的,因为当我打印data时,它给了我用户和会话信息。但是当我尝试检索用户或会话信息时,它只是空的。在下面的代码中,event变为INITIAL_SESSION,session变为null,user也变为null。我也不太明白Supabase的会话是如何工作的。如果有人能在这方面提供一些帮助,我将不胜感激。

app.post("/login", async(req, res) => {
    const {data, error} = await supabase.auth.signInWithPassword({
        email: req.body.email,
        password: req.body.password
    })
    await supabase.auth.onAuthStateChange((event, session) => {
        console.log(event, session);
    })
    if (error) {
        console.log(error);
        res.status(401).send("Email/password combination is wrong.");
    }
    else {
        const { data: { user } } = await supabase.auth.getUser();
        console.log(user);
        res.status(202).send("Login successful.");
    }
})

字符串

ntjbwcob

ntjbwcob1#

默认情况下,Supabase会在用户登录之前启用电子邮件确认。我修复它的方法是进入身份验证>提供商>电子邮件并取消选择“确认电子邮件”。

相关问题