Java 播放框架路线
我想抓住所有未知的GET操作 我的路由文件如下所示:Java 播放框架路线,java,scala,playframework,Java,Scala,Playframework,我想抓住所有未知的GET操作 我的路由文件如下所示: GET / controllers.MainController.index() #All other routes #finally GET /[^/]+/ controllers.MainController.fault() 最终的GET定义位于列表底部,因为上面的GET操作具有优先级,否则所有请求都将符合/[^/]+/条件 问题是它会转到默认
GET / controllers.MainController.index()
#All other routes
#finally
GET /[^/]+/ controllers.MainController.fault()
最终的GET定义位于列表底部,因为上面的GET操作具有优先级,否则所有请求都将符合/[^/]+/条件
问题是它会转到默认的catch页面,说“找不到操作”
我怎样才能赶上所有的路线呢?我相信
GET /*route controllers.MainController.fault()
这样会更好route
将捕获接收到的路径,您可以将其作为参数传递给fault
方法
但是,我建议另一种选择:可以实现一个GlobalSettings
对象,在其中重写该方法
def onHandlerNotFound(request: RequestHeader): Future[SimpleResult]
每次收到无法找到适当处理程序的请求时,都会调用此方法。您可以在此处找到更多信息:完美!那正是我想要的。GET/*route controllers.MainController.fault(route)public static Result fault(String url){return badRequest(url+“not found”);}现在,我还使用了自定义全局类。但是定义有点不同:override def onHandlerNotFound(请求:RequestHeader)={Future.successful(NotFound(views.html.errorpage(request.path))}