4
A
回答
5
你应该看看GlobalSettings
:https://www.playframework.com/documentation/2.3.x/ScalaGlobal
尤其是,它可以让你覆盖:
def onError(request: RequestHeader, ex: Throwable)
def onHandlerNotFound(request: RequestHeader)
def onBadRequest(request: RequestHeader, error: String)
onError
可能是你正在寻找的一个,但其他人可能是太有用:)
5
的另一种方式做,这是使用filter,如:
object ExceptionFilter extends EssentialFilter {
def apply(nextFilter: EssentialAction) = new EssentialAction {
def apply(requestHeader: RequestHeader) = {
val next: Iteratee[Array[Byte], Result] = nextFilter(requestHeader)
// Say your backend throws an ItemNotFound exception.
next recoverWith {
case e: ItemNotFound => Iteratee.ignore[Array[Byte]]
.map(_ => Results.NotFound("Item not in the database!"))
}
}
}
}
然后钩住了在全局设置:
object Global extends WithFilters(CSRFFilter(), ExceptionFilter) with GlobalSettings
这可能允许在需要时您做一些与请求主体。我同意在大多数情况下使用GlobalSettings.onError
可能是最简单的方法。
相关问题
- 1. 播放框架形式错误处理
- 2. 播放框架InjectedRoutesGenerator错误
- 3. 播放框架错误
- 4. 使用runAsync时播放框架处理错误
- 5. 通过播放框架处理JSON 1.2.3
- 6. 播放框架批处理文件
- 7. 表单错误的i18n播放框架
- 8. 播放框架测试错误
- 9. 播放框架依赖注入错误
- 10. Heroku错误运行播放框架2
- 11. 开始播放框架错误
- 12. 播放框架2.0控制台错误
- 13. 播放框架油滑HikariCP错误
- 14. 播放框架1.2.5模板错误
- 15. 播放框架测试错误
- 16. 播放框架无法识别错误?
- 17. 播放框架initial-data.yml解析错误
- 18. 播放框架路由错误
- 19. 构建错误在播放框架
- 20. 播放框架重定向错误
- 21. 播放框架异步响应错误
- 22. JPA @ElementCollection播放框架错误
- 23. PlayMagicForJava播放错误!框架应用?
- 24. 在fatfree框架中处理错误
- 25. 如何处理播放框架中的json请求1.2.5
- 26. 处理本地postgres在播放框架中的数据1.2.5
- 27. html5视频播放器错误处理
- 28. 开放框架V.S处理
- 29. 每个连接在播放框架2中如何处理?
- 30. 错误处理使用无框架
你看过Scala Future和Play之前的行动/结果吗? – cchantep 2014-08-28 11:46:10
@applicius:我不太清楚你的评论如何解释正确的地方执行*集中*在播放应用程序中的错误处理... – jfu 2014-08-28 11:56:15
我很不确定你有没有阅读Play框架文档关于行动,动作组合,行动构建和使用未来。 – cchantep 2014-08-28 12:01:24