class

Hwaro::Services::NotFoundHandler

Inherits HTTP::Handler < Reference < Object

Constants

ALLOWED_METHODS = "GET, HEAD, OPTIONS"

With live reload on, 404 responses embed the reload script too: a tab parked on a not-yet-rendered URL (a page still building, a --fast-start deferred page) then refreshes itself the moment its HTML lands on disk, and build-error overlays reach 404 tabs as well. Without the script those tabs sat on the 404 forever. Methods the dev server actually answers. Anything else gets a 405 with an Allow header instead of a 404: StaticFileHandler is built with fallthrough: true, so a POST used to fall through to here and be reported as "no such page", which reads as a routing bug to anyone pointing a form or API mock at the dev server.

OPTIONS is advertised because the server does answer it — just further up, where DevCorsHandler returns its 204 preflight without calling down the chain. It therefore never reaches the branch below, but the advertised Allow value has to tell the truth about the server.

Constructors

new(public_dir : String, injector : LiveReloadInjectHandler | Nil = nil)
Source

Instance methods

call(context)
Source