nuxt-auth-utils
nuxt-auth-utils copied to clipboard
`setUserSession` and `replaceUserSession` Lack Error Handling for Session Storage Failures
The setUserSession and replaceUserSession methods return a UserSession object that reflects the intended session data, even when the data fails to persist due to storage limits 4096-byte.
This behavior creates a false assumption that the data was saved successfully.
For example:
const newSession = { user: { id: 1 }, token: "large-token-data" };
const result = await setUserSession(event, newSession);
console.log(result); // Outputs `newSession`, even if it wasn't saved
const currentSession = await getUserSession(event);
console.log(currentSession ); // Outputs outdated data
Expected Behavior
If session persistence fails, the methods should throw an error or return a status indicating failure. The returned UserSession object should only reflect successfully persisted data.
Indeed, it might be tricky as the data is encoded to know when to throw an error :(
I'm very happy to have come across this post !!! Because I had exactly the same problem. I reached the maximum size and couldn't understand why I couldn't log in anymore.
No error message, nothing at all.