coffeebeanOriginal post
Rank 1: Thread
Authentication works great on Chrome but for whatever reason when trying to authenticate using Safari, I receive this error.
AppwriteException: User (role: guests) missing scope (account)
It errors on this piece of code where I am checking to see if the user has a session.
JavaScript
useEffect(() => { setUserLoading(true); setIsLoading(true); account .getSession("current") .then((response) => { setUserLoading(false); setIsLoading(false); if (response) { if (pathName === HOME_ROUTE) { router.push(ACCOUNT_ROUTE); } } }) .catch((error) => { console.error(error); setUserLoading(false); setIsLoading(false); router.push(HOME_ROUTE); }); }, [user]);```
I understand it is suppose to give that error when there is no session.. and I know the user is being authenticated because they are being created in the control panel.
Here is how I am authenticating, just in case this helps
```js const onClick = async () => { account.createOAuth2Session( "discord", "http://localhost:3000", "http://localhost:3000" ); };This is on localhost, I have not tried deploying it yet.
Summary
The user is experiencing an authentication error on Safari when using custom domains. The error message states "AppwriteException: User (role: guests) missing scope (account)." The issue arises when checking if the user has a session. The user believes that deploying the project, rather than using localhost, might resolve the issue. They provide code snippets showing how they are authenticating the user.