Estoy escribiendo el servidor más simple a través de Swift Express
Y quiero agregar un controlador personalizado para "url no encontrada" para que si el usuario escribe "/ notFoundUrl" verá algo como eso: "Url "notFoundUrl" no encontrada, vaya a la página de inicio".
He añadido:
app.get("/:notFoundUrl+") { (request:Request<AnyContent>)->Action<AnyContent> in print(request.params["notFoundUrl"]) return Action<AnyContent>.render("index", context: ["hello": "Page Not Found: " + request.params["notFoundUrl"]!]) }Pero no es apropiado porque:
Entonces, ¿cómo agregar "Página no encontrada/controlador 404" personalizado a Swift Express Server ?
Es mucho más simple de lo que estás tratando de hacerlo.
/// Custom page not found error handler app.errorHandler.register { (e:ExpressError) in switch e { case .PageNotFound(let path): return Action<AnyContent>.render("404", context: ["path": path], status: .NotFound) default: return nil } }El do completo se puede encontrar aquí: https://github.com/crossroadlabs/Express/blob/master/doc/gettingstarted/errorhandling.md