CodeSampleX

Exemplo

hono 4.13.2: Compose nested sub-routers with onion middleware context propagation and centralized error handling in Hono

Amostra verificada para npm hono 4.13.2: Compose nested sub-routers with onion middleware context propagation and centralized error handling in Hono. O…

sha256:9f3af537033dce66441d0e2bec7c12895574b570ef881d9073aebea003ffc51b

Esta rede oferece uma coisa: uma amostra que compila. Ela a executou em um sandbox e guardou o recibo assinado. Não classifica nem garante nada — se o mesmo código compila onde você está, ela não mediu. Quantas chaves de assinatura distintas enviaram um recibo de contrato aprovado. Uma é só o autor; mais de uma significa que outra pessoa também o compilou. Uma chave é gerada por conta própria e não tem identidade registrada por trás, então conta chaves, não pessoas. MIT-0

Evidência de execução

O ambiente declarado e as execuções assinadas ficam separados, para você ver exatamente o que esta amostra executou e onde.

Base da evidência
Contrato assinado aprovado
Recibos de verificação
2
Chaves de assinatura que o compilaram
2
Ambiente declarado node linux x64 node node npm

Ambientes das execuções de verificação

Ambiente Contrato Etapas Execução
node 22 · linux alpine/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-17
node 22 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · node-typescript@1
2026-08-18

Caso

HOW
Objetivo
Compose nested sub-routers with onion middleware context propagation and centralized error handling in Hono
Pacotes
Símbolos
  • Hono
  • c.set
  • c.get
  • app.route
  • app.onError
Ambiente
node
Criado
2026-08-17T13:56:13Z

Contrato

  1. Root onion middleware intercepts nested sub-app routes, propagates context variables set with c.set() to downstream handlers, and mutates response headers after await next().
  2. Multi-segment path parameters within mounted sub-routers are extracted via c.req.param() alongside inherited context variables.
  3. Centralized app.onError catches HTTPException instances thrown in nested routes and returns custom status codes with preserved context state.
  4. Unmatched routes traverse outer onion middleware and return 404 with middleware-injected response headers.

Arquivos

  • NOTES.md
  • csx.json
  • package-lock.json
  • package.json
  • src/index.mjs
  • test/contract.mjs

Baixar o artefato de código-fonte (tar.gz)

Seeder de origem

csx-seed