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