I've run into an error while integrating OAuth2 logins into my app. Specifically, after a successful Google login, I'm encountering an "AppwriteException" indicating that the user is missing the "account" scope.
AppwriteException: User (role: guests) missing scope (account)
After consulting the documentation and discussions on Discord, I realized that I forgot to create a session after the Google login. The documentation suggests using the account.createSession(userId, secret) method to create the session.
https://appwrite.io/docs/products/auth/oauth2#init
const urlParams = new URLSearchParams(window.location.search);
const secret = urlParams.get('secret');
const userId = urlParams.get('userId');
await account.createSession(userId, secret);
However, I'm unsure about the appropriate timing to call this method in my Next.js app. It doesn't seem efficient to call it every time the page loads using useEffect. Any thoughts on this?
If there's already a solution to this, please provide the relevant URL
You'd do this once, immediately after Google redirects back to your app
(In fact, it will only work once - if you try again you should receive an "Invalid secret" error, I think)
did you find this fix?
I am facing similar problem.
bello
any updates ? 🙂
Recommended threads
- Not able to upgrade to Appwrite Pro
This is my project ID - 69f5bee60036512d2d52 I've tried multiple credit cards now and I still face the same error "Your card was declined". But I've used the s...
- Running into a server error on my self-h...
Hey everyone, I'm running into a server error on my self-hosted setup after updating to v1.19.0. The issue only happens during user creation and deletion. Ever...
- Storage System
Hey guys, quick question regarding massive storage scaling. I’m working in digital forensics and I’m constantly dealing with huge binary disk images, usually be...