Cómo utilizar las rutas de captura con Kemal

Para una aplicación Vue.js de una sola página - al menos en una URL SUB de nuestra página - queremos un catch all en nuestro servidor, que siempre rendirá la misma plantilla / salida HTML al navegador.

Kemal se basa internamente en Radix para el enrutamiento:

Radix tiene un carácter Catch All / Glob: *

Por lo tanto, si queremos crear una ruta de captura de todo, simplemente escribimos:

get "/debug/*" do |env|
   render "src/views/hello.ecr"   
fin

Esto coincidirá, por ejemplo:

  • /debug
  • /debug/
  • /debug/cualquier cosa
  • /debug/anything/as/deep/as/you/want

Esto NO coincidirá:

  • /debug3

Otras lecturas / Código: