短篇故事:
在我重置用户密码后,用户将被重定向回我的应用程序。当我运行
await supabase.auth.updateUser(user)
时,我收到未登录异常。
长话短说:
我有一个在 Flutter 中使用 supabase 创建的应用程序。我的重置密码功能遇到一些问题。 当单击重置密码时,用户输入他们的电子邮件。然后我执行
supabase.auth.resetPasswordForEmail(email, redirectTo: "parkeringsapp://parkering/glemtpassord");
用户收到电子邮件并单击重置密码链接。 用户被重定向到我的应用程序,我收到一个深层链接代码:
parkeringsapp://parkering/glemtpassord?code=bb1de446-ddfc-43c3xxxxxxxxxxxxxxx
然后,我在代码中检查深层链接 url,如果它包含 glemtpassord,我会将用户重定向到新密码页面。
用户输入新密码后,我执行代码
UserAttributes user = UserAttributes(password: password);
var response = await supabase.auth.updateUser(user);
但现在问题开始了。
supabase.auth.updateuser
抛出异常Not logged in
。所以用户还没有登录。
问题:
我以为点击链接会自动让用户登录。
有什么建议吗?
还没找到类似的问题
现在这个问题已经解决了。我使用了这段代码supabase.auth.getSessionFromUrl()并传递了URL。这解决了我的问题。