接口 SessionStorage<Data, FlashData>

SessionStorage 在 HTTP 请求之间存储会话数据,并知道如何解析和创建 Cookie。

SessionStorage 使用 Cookie 标头作为输入来创建 Session 对象。然后,稍后它会生成要在响应中使用的 Set-Cookie 标头。

interface SessionStorage<Data, FlashData> {
    commitSession: ((session: Session<Data, FlashData>, options?: CookieSerializeOptions) => Promise<string>);
    destroySession: ((session: Session<Data, FlashData>, options?: CookieSerializeOptions) => Promise<string>);
    getSession: ((cookieHeader?: null | string, options?: CookieParseOptions) => Promise<Session<Data, FlashData>>);
}

类型参数

属性

commitSession: ((session: Session<Data, FlashData>, options?: CookieSerializeOptions) => Promise<string>)

存储 Session 中的所有数据,并返回要在 HTTP 响应中使用的 Set-Cookie 标头。

destroySession: ((session: Session<Data, FlashData>, options?: CookieSerializeOptions) => Promise<string>)

删除与 Session 关联的所有数据,并返回要在 HTTP 响应中使用的 Set-Cookie 标头。

getSession: ((cookieHeader?: null | string, options?: CookieParseOptions) => Promise<Session<Data, FlashData>>)

解析来自 HTTP 请求的 Cookie 标头,并返回关联的 Session。如果 Cookie 没有关联的会话,这将返回一个没有数据的新 Session。