pub trait Configure<D> {
    // Required method
    fn configure(
        self,
        fns_: fn() -> RouteHandler<D, impl Future<Output = CfResult<Response>> + 'static>
    ) -> Router<'static, D>;
}
Expand description

A trait that’s implemented for RouteHandler that you can call to configure the routes and pattern.

Example

use serde::{Deserialize, Serialize};
use worker::{event, Env, Request, Response, ResponseBody, Result, RouteContext, Router};
use worker_route::{get, AddRoute, Configure, Query};

#[derive(Debug, Deserialize, Serialize)]
struct Person {
    name: String,
    age: usize,
}

#[get("/person/:name/:age")]
async fn person(req: Query<Person>, _: RouteContext<()>) -> Result<Response> {
    Response::from_json(&req.into_inner())
}

#[event(fetch)]
pub async fn main(req: Request, env: Env, _ctx: worker::Context) -> Result<Response> {
    let router = Router::new();
    router.configure(person).run(req, env).await
}

Required Methods§

source

fn configure( self, fns_: fn() -> RouteHandler<D, impl Future<Output = CfResult<Response>> + 'static> ) -> Router<'static, D>

Implementations on Foreign Types§

source§

impl<D: 'static> Configure<D> for Router<'static, D>

source§

fn configure( self, fns_: fn() -> RouteHandler<D, impl Future<Output = CfResult<Response>> + 'static> ) -> Router<'static, D>

Implementors§