Comments (6)
You store.generate
function must be sync. You are not supposed to actually create the session in the store at that time. You should be waiting for the store.set
call to create the entry in your storage system.
from session.
if other middleware layers (eg, authentication/authorization) are expecting the session to exist in the datastore.
They should only access the session using req.session
; perhaps we can add some kind of option to allow for saving the session to the store up-front, like you are wanting.
from session.
The store implementation doesn't actually define generate
, only set
. So the store I'm using has properly set up an async set
, but because of how generate gets called, it doesn't matter.
And now that i've dived into the code, I realize that it should only be using req.session
, as you say, which is probably totally reasonable, but it was a pretty big gotcha before I figured it out!
So maybe a feature request, maybe just a call out in the docs would do.
from session.
The store implementation doesn't actually define generate, only set.
Correct, but you made it sound like you were over-writing this, so I assumed you were redefining it. Apparently not, so yes, it doesn't even get save to the database until the request that created the session has completed.
from session.
@japherwocky - is this still an issue for you? are you good with @dougwilson 's explanation to your concerns?
from session.
Sorry, this was so long ago, I have no idea if it's an issue for that project anymore. Feel free to close the issue!
from session.
Related Issues (20)
- When Run frontend and backend in diff domain it not working HOT 2
- Undefined session object with apollo v4 express and express-session HOT 1
- Regenerated session is re-saved even if not modified since save HOT 1
- Allow for sessions to be shared between subdomains. HOT 1
- Invalid argument type express-session "1.17.3" and redis "4.6.7", HOT 1
- Request session destroy does not always resolve before returning HOT 1
- TypeError: Cannot read properties of undefined (reading 'reload') HOT 4
- [FEATURE REQUEST] Session Async Methods
- `SESSION.DESTROY()` DOES NOT DELETE SESSION. HOT 7
- A `destroy`ed session is still `touch`ed HOT 1
- cookie options won't get set HOT 13
- [Feature Request] Support of phasing out third-party cookies HOT 16
- req.sessionStore.all with typescript bug? HOT 7
- Don't `Set-Cookie` for static/public files? HOT 2
- Issue HOT 1
- Can't set partitioned cookie even though I updated all of the package HOT 6
- 'sha1' hash algorithm used at index.js is unsafe HOT 3
- Any good ways to refresh database data with a session? HOT 4
- Get session object from `req.session` outside of request context HOT 3
- express session is failing because session is undefined HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from session.