Documentation / @zerotal/auth / RememberMeMiddleware
Class: RememberMeMiddleware
Defined in: auth/src/RememberMeMiddleware.ts:47
Persistent "remember me" login.
Registered globally by AuthProvider, after PersistUserMiddleware:
- Read (before the request): when no user was restored from the session, it
reads the
remember_webcookie (id|token), loads the user by id, and constant-time-comparessha256(token)to the stored hash. On a match it re-authenticates the user, re-seeds the session, and flagsAuth.viaRemember(). - Write (after the request): it flushes any cookie action queued by
Auth.login({ remember: true })/Auth.logout()onto the response.
The user loader is the same auth.userLoader binding PersistUserMiddleware
uses; if none is registered, the read step is a silent no-op.
Extends
Constructors
Constructor
new RememberMeMiddleware():
RememberMeMiddleware
Defined in: core/src/middleware/BaseMiddleware.ts:36
Returns
RememberMeMiddleware
Inherited from
Properties
options
protectedoptions:RememberMeOptions={}
Defined in: auth/src/RememberMeMiddleware.ts:48
Subclasses must declare this with their default option values. TypeScript enforces this at compile time — forgetting it is a type error.
Overrides
Methods
handle()
handle(
http,next):Promise<void|Response>
Defined in: auth/src/RememberMeMiddleware.ts:50
Parameters
http
next
Returns
Promise<void | Response>
Overrides
loadUser()
protectedloadUser(userId,ctx):Promise<AuthUser|null>
Defined in: auth/src/RememberMeMiddleware.ts:64
Load a user for a remember-cookie id via the auth.userLoader binding.
Returns null (no throw) when no loader is registered — remember-me is
best-effort and must never break a request.
Parameters
userId
number
ctx
Returns
Promise<AuthUser | null>
with()
staticwith<T,Opts>(this,options): () =>InstanceType<T>
Defined in: core/src/middleware/BaseMiddleware.ts:48
Returns a zero-arg subclass with the given options deep-merged on top of the subclass defaults, usable directly in app.use([...]).
Type Parameters
T
T extends (...args) => BaseMiddleware<any>
Opts
Opts = T extends (...args) => BaseMiddleware<U> ? U : object
Parameters
this
T
options
Partial<Opts>
Returns
() => InstanceType<T>
Inherited from
afterResponse()?
optionalafterResponse(ctx):Promise<void>
Defined in: core/src/middleware/BaseMiddleware.ts:70
Parameters
ctx
Returns
Promise<void>
Inherited from
onError()?
optionalonError(ctx,error):Promise<void>
Defined in: core/src/middleware/BaseMiddleware.ts:71
Parameters
ctx
error
Error
Returns
Promise<void>