Saltar al contenido
Meeko
Escribe para buscar en las guías y en la referencia de la API. Ábrela desde cualquier página con / o Ctrl K; muévete con las flechas y entra con Intro.
Empezar

Contenidos

En esta página

dispatchApiRoute

función

Atiende una petición de API para un host propio: ejecuta el endpoint, normaliza los errores en { code, status, requestId }, informa los fallos 5xx a onError y añade x-request-id, la cookie de sesión y el token CSRF. Nunca rechaza. Desde 1.7, si el endpoint declara form y la petición es un formulario nativo, responde 303 See Other con el resultado en una cookie de un solo uso (salvo 403 por Origin o CSRF); executeApiRoute sigue aceptando sólo JSON.

ts
import { dispatchApiRoute } from "@meekojs/meeko/server";

Código fuente src/server/api/runtime.ts:145

Firma #

ts
function dispatchApiRoute<P extends Schema | undefined, Q extends Schema | undefined, B extends Schema | undefined, R extends Schema | undefined, S, L = undefined, T extends ApiSuccessStatus = ApiSuccessStatus>(definition: ApiRouteDefinition<P, Q, B, R, S, L, T>, context: RequestContext<S>, sessions: SessionManager, params?: unknown, onError?: ServerErrorObserver): Promise<Response>

Parámetros de tipo #

P extends Schema | undefined
Q extends Schema | undefined
B extends Schema | undefined
R extends Schema | undefined
S
L = undefined

Parámetros #

definition ApiRouteDefinition<P, Q, B, R, S, L, T>

Endpoint declarado con defineApiRoute.

context RequestContext<S>

Contexto de la petición.

sessions SessionManager

Gestor de sesiones.

params unknown opcional

Parámetros de la ruta sin validar.

onError ServerErrorObserver opcional

Observador de los fallos internos.

Devuelve #

Promise<Response>

La respuesta final.

Ejemplo #

ts
import { dispatchApiRoute } from "@meekojs/meeko/server";
import userRoute from "./server/api/users/[id].get.js";

const response = await dispatchApiRoute(userRoute, context, sessions, { id: "123" }, (error, id) => console.error(id, error));

Véase también #

¿Te sirvió esta página?

Añadir un comentario

Se envía al elegir «Sí» o «No». Solo se guardan la página, tu respuesta y el comentario: ni cookies ni datos tuyos.

0 de 2000 caracteres

Editar en GitHub: packages/meeko/src/server/api/runtime.ts