ServerRouteMiddlewareContext
interfaz Since 1.6.0
Contexto del middleware de ruta de servidor (app/middleware/*.server.ts): el de usePage() en el
<script server> de la página, con la sesión, los servicios y la plataforma de la petición a mano.
params y search son los de la URL, sin validar todavía con los schemas de la página, porque el
middleware se ejecuta antes que su <script server> o su load.
import type { ServerRouteMiddlewareContext } from "@meekojs/meeko/framework";Source code src/server/middleware/runtime.ts:25
Declaración #
interface ServerRouteMiddlewareContext<TServices = unknown, TEnv = unknown> {
readonly url: URL
readonly match: RouteMatch
readonly params: Readonly<Record<string, string>>
readonly search: Readonly<Record<string, string | string[]>>
readonly request: Request
readonly signal: AbortSignal
readonly context: RequestContext<TServices, TEnv>
readonly session: RequestContext<TServices, TEnv>['session']
readonly services: ContextServices<TServices>
readonly platform: ServerPlatform<TEnv>
readonly requestId: string
}Type parameters #
-
TServices= unknown Tipo de
services.-
TEnv= unknown Tipo del entorno de la plataforma.
Example #
import type { ServerRouteMiddlewareContext } from "@meekojs/meeko/framework";
function signedIn({ session }: ServerRouteMiddlewareContext): boolean {
return session.current !== undefined;
}Propiedades #
search
#
readonly search: Readonly<Record<string, string | string[]>>Parámetros de búsqueda, sin validar.
request
#
readonly request: RequestPetición HTTP: la del documento en SSR o la de los datos de la página al navegar.
context
#
readonly context: RequestContext<TServices, TEnv>Contexto de la petición, el mismo que usePage().context. Con createFrameworkHandler sin
createContext, leerlo (o session, services, platform y requestId) lanza un error.
session
#
readonly session: RequestContext<TServices, TEnv>['session']Sesión de la petición, como context.session.
services
#
readonly services: ContextServices<TServices>Servicios de server/runtime.ts, como context.services; desde 1.7, AppServices sin TServices.
platform
#
readonly platform: ServerPlatform<TEnv>Runtime que atiende la petición, como context.platform.
See also #
- Server route middleware Framework full-stack