I'm trying to implement Google login using Appwrite in my Flutter web app. The login process opens a new tab for authentication, but after logging in:
The popup remains open instead of closing automatically. The main page does not immediately update to show the logged-in user. The login button stays disabled even if I close the popup manually. There's no logout button appearing after login.
Future<void> googleLogin() async { setState(() => isLoading = true); try { final account = Account(widget.account.client); await account.createOAuth2Session( provider: OAuthProvider.google, success: 'http://localhost:3000/auth.html', );
await Future.delayed(Duration(seconds: 2));
final user = await account.get();
if (user != null) {
setState(() {
loggedInUser = user;
isLoading = false;
});
} else {
setState(() => isLoading = false);
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(content: Text('Error retrieving user data')),
);
}
} catch (e) { setState(() => isLoading = false); ScaffoldMessenger.of(context).showSnackBar( SnackBar(content: Text('Login failed: $e')), ); } }
My auth.html file contains: <!DOCTYPE html>
<title>Authentication complete</title> <p>Authentication is complete. If this does not happen automatically, please close the window.</p> <script> window.opener.postMessage({ 'flutter-web-auth-2': window.location.href }, window.location.origin); window.close(); </script>Questions: How can I make the popup window close automatically after login? How do I ensure the main page updates immediately with the logged-in user info? Is there a better approach to handling OAuth login in Flutter Web with Appwrite? Any help would be greatly appreciated! Thanks in advance.
Recommended threads
- Custom Domain Verification Failed
Hi! I woke up to my app not working because of this custom domain verification failed error. I have not moved any DNS configuration since I set it up 3 years ag...
- Failed to load data from database
My app broken, it throw AppwriteException exception. Few days ago it works well. AppwriteException: , ClientException with SocketException: Failed host lookup:...
- AI feature by functions?
I'm creating a website where, in short, users can index certain genealogical content. In connection with the development of AI, I was thinking about introducing...