@whi/cf-routing - v0.7.0
    Preparing search index...

    Interface Context<E, P, D>

    Context object passed to all middleware and route handlers.

    Provides access to the request, environment, route parameters, shared data for middleware communication, and response customization.

    // Middleware setting data
    const authMiddleware: Middleware<Env, Params, { user: User }> = async (ctx, next) => {
    ctx.data.user = await validateToken(ctx.request);
    return next();
    };

    // Handler reading data
    class UserHandler extends RouteHandler<Env, { id: string }, { user: User }> {
    async get(ctx) {
    const user = ctx.data.user;
    return { user };
    }
    }
    interface Context<E = Env, P = Params, D = Record<string, any>> {
        request: Request;
        env: E;
        params: P;
        data: D;
        response: ResponseContext;
        log: Logger;
    }

    Type Parameters

    • E = Env

      Environment type extending base Env interface

    • P = Params

      Route parameters type

    • D = Record<string, any>

      Data type for middleware-set data

    Index

    Properties

    request: Request

    Original incoming request

    env: E

    Worker environment bindings

    params: P

    Route parameters from URL (e.g., { id: '123' } from '/users/:id')

    data: D

    Shared data for middleware to pass to handlers. Use this to store computed data like authenticated user, parsed body, etc.

    response: ResponseContext

    Response customization (status, headers)

    log: Logger

    Logger instance