Our robust community site integrating Steam for enhanced user interactions and data management, powered by Remix with Tailwind CSS for optimistic, responsive UI. Features CI/CD with GitHub Actions and Docker for seamless deployment and maintenance.
We are experiencing an issue with the Steam account linking process where the session cookie is set correctly after a successful login, but the user's Steam ID is not being persistently stored in the database. This results in users needing to relink their Steam accounts each time they log out, as the cookie reset wipes the session without a corresponding database record to maintain the link.
Current Flow:
A user logs in and proceeds to link their Steam account.
Upon successful authentication, the popup window handling the Steam login redirects to our site's callback, setting the session with the Steam ID.
The window then posts a message (steam-auth-success) which triggers the window to close.
Simultaneously, the 'Set-Cookie' header commits the session cookie.
Issue:
While the session persists as long as the cookie is not wiped (e.g., the user does not log out), the Steam ID does not get recorded in the database.
If a user logs out, they are required to relink their Steam account upon next login, as the database does not have a record of the previous link.
Proposed Solution:
Update the Backend API: Modify the Imperfect Gamers API to include a new endpoint that handles saving the Steam ID to our database. This endpoint should be designed to receive the Steam ID from our frontend application and update the user's record accordingly.
Frontend Adjustment: Ensure that after the session is set and the 'Set-Cookie' header is sent, a call is made to this new endpoint to commit the Steam ID to the database permanently.
Expected Outcome:
With these changes, once a user links their Steam account, this link should be maintained across sessions independently of the cookie's existence. This will enhance the user experience by eliminating the need to frequently relink the Steam account and ensure data consistency across our systems.
Additional Notes:
This change will align the Steam linking functionality with our existing user data management practices and provide a smoother and more reliable user experience.
We are experiencing an issue with the Steam account linking process where the session cookie is set correctly after a successful login, but the user's Steam ID is not being persistently stored in the database. This results in users needing to relink their Steam accounts each time they log out, as the cookie reset wipes the session without a corresponding database record to maintain the link.
Current Flow:
steam-auth-success
) which triggers the window to close.Issue:
Proposed Solution:
Expected Outcome:
With these changes, once a user links their Steam account, this link should be maintained across sessions independently of the cookie's existence. This will enhance the user experience by eliminating the need to frequently relink the Steam account and ensure data consistency across our systems.
Additional Notes:
This change will align the Steam linking functionality with our existing user data management practices and provide a smoother and more reliable user experience.