在函数中使用Scalatra的halt()

时间:2015-12-08 11:28:42

标签: java web-services scala servlets scalatra

我的Scalatra网络服务有很多GET路由。他们中的每个人都需要几乎完全相同的代码来进行缓存和身份验证/授权,重复的代码是愚蠢的。

我希望借助隐式参数将该代码重构为例如一个函数cached,自动检查给定的ETag是否仍然是正确的/ ressource,因此没有被修改。

javax.servlet.http.HttpServletRequest / javax.servlet.http.HttpServletResponse设置为隐式参数非常简单,但现在我想直接从该子函数中短接给定的E304案例。通常,您使用Scalatra的halt()。据我所知,给定的Servlet通过继承来获取它们。因此,我需要将我的函数作为参数(Java开发人员喜欢this)。

这是一个可靠的策略(来自良好重构的POV)吗?是否有更优雅的方式可以访问该单个成员halt()

0 个答案:

没有答案