Fastro
BlogDocsSign in

Route Middleware


import fastro, { Context, HttpRequest } from "https://fastro.deno.dev/mod.ts";

const f = new fastro();

const m1 = (req: HttpRequest, ctx: Context) => {
  // console.log("middleware 1");
  req.m1 = "middleware1";
  return ctx.next();
};

const m2 = (_req: HttpRequest, ctx: Context) => {
  // console.log("middleware 2");
  return ctx.next();
};

const m3 = (_req: HttpRequest, ctx: Context) => {
  // console.log("middleware 3");
  return ctx.next();
};

const m4 = (_req: HttpRequest, ctx: Context) => {
  // console.log("middleware 4");
  return ctx.next();
};

const handler = (req: HttpRequest) => {
  // `middleware1` for get
  // `undefined` for post
  return req.m1;
};

f.get("/", m1, m2, m3, handler);
f.post("/", m4, handler);

await f.serve();
Made with ♡ in Tulungagung