I have a web app in reactjs that uses the Google login that is integrated into Appwrite for user login. I use createOAuth2Token() to login to their account. And I use createSession() to create a session within the Appwrite environment. To logout, I use deleteSession(). This approach of mine, however, only deletes the user's in process session within the Appwrite environment. It does not logout the user from their google account. I know this, because after clicking 'logout, when the user tries to log back in, they are immediately signed in without being prompted to enter their Google credentials again.
I logged the details of the session, and I saw that providerAccessToken is an empty string. Since providerAccessToken is an empty string for Googe OAuth2 logins, I assumend that the session $id can replace it. However, it did not help. Google returns Bad Request and does not logout the user from Google.
export const deleteUserSession = async () => {
const currentSession = await account.getSession('current');
const accessToken = currentSession.$id;
console.log('currentSession', currentSession);
console.log('accessToken', accessToken);
try {
if (currentSession && accessToken) {
await account.deleteSession(currentSession.$id);
console.log('Session deleted successfully');
await fetch('https://accounts.google.com/o/oauth2/revoke?token=' + accessToken, {
method: 'GET',
mode: 'no-cors',
});
console.log('LOGGED OUT SUCCESSFULLY.');
}
console.log('REDIRECTING TO /');
} catch (error) {
console.error('Error deleting the session:', error);
}
}
Recommended threads
- Appwrite github organization error
I have github student account. The auth has been paused however the database is working fine. I cant see any option to resume from my console panel. It is just ...
- Appwrite project paused
I have github student account. The auth has been paused however the database is working fine. I cant see any option to resume from my console panel. It is just ...
- Error can not create `tablesdb` event wi...
When i'm trying to add an event with `tablesdb` i get an error message My event value: `tablesdb.mtg-decklist-dev.tables.queue_parsing.rows.*.create` Same err...