filter过滤实例知识
来源:互联网 发布:计算机数据库研究生 编辑:程序博客网 时间:2024/06/04 18:13
一.
1.
builds.scala加上filter的依赖
libraryDependencies ++= Seq( jdbc, anorm, cache, ws, filters)
2.在App目录下创建
Global.scala
import play.api.mvc._import play.filters.gzip.GzipFilterobject Global extends WithFilters(LoggeringFilter,new GzipFilter()){}
LoggeringFilter.scala
import play.api.Loggerimport play.api.mvc._import scala.concurrent.Futureimport play.api.libs.concurrent.Execution.Implicits.defaultContextobject LoggeringFilter extends Filter{def apply(nextFilter:(RequestHeader) => Future[Result])(requestHeader:RequestHeader):Future[Result] = {val startTime = System.currentTimeMillisnextFilter(requestHeader).map{result =>val endTime = System.currentTimeMillisval requestTime = endTime - startTimeLogger.info(s"${requestHeader.method} ${requestHeader.uri}" + s"took ${requestTime}ms and returned ${result.header.status}")result.withHeaders("Requeat-Time" -> requestTime.toString)} }}结果
二.使用EssentialFilter
Play provides a lower level filter API called EssentialFilter
which gives you full access to the body of the request. This API allows you to wrap EssentialAction with another action.
import play.api.Loggerimport play.api.mvc._import play.api.libs.concurrent.Execution.Implicits.defaultContextobject LoggingFilter extends EssentialFilter { def apply(nextFilter: EssentialAction) = new EssentialAction { def apply(requestHeader: RequestHeader) = { val startTime = System.currentTimeMillis nextFilter(requestHeader).map { result => val endTime = System.currentTimeMillis val requestTime = endTime - startTime Logger.info(s"${requestHeader.method} ${requestHeader.uri}" + s" took ${requestTime}ms and returned ${result.header.status}") result.withHeaders("Request-Time" -> requestTime.toString) } } }}
0 0
- filter过滤实例知识
- filter过滤
- filter过滤
- filter过滤、servlet过滤
- JavaWeb-过滤器Filter学习(四)敏感词过滤实例
- filter知识
- 关于filter 过滤
- Filter过滤非法字符
- java Filter 权限过滤
- 使用filter过滤请求
- 动态数据过滤Filter
- 使用filter过滤请求
- 过滤字符串filter
- 使用filter过滤请求
- filter 登录过滤笔记
- ClientDataSet过滤功能Filter
- Ehlib DBGrideh Filter 过滤
- filter过滤说明
- 发送广播简易工具类
- VC中三种获取本地时间的方式
- java中断言(assert)应用
- html5 postMessage解决跨域、跨窗口消息传递
- LeetCode Restore IP Addresses
- filter过滤实例知识
- sql 删除 空记录
- WEKA使用教程
- java单点登录的实现
- JS中,'yyyy-MM-dd HH:mm:ss'字符串转为日期
- 手把手教你 python读取文件报错:ValueError encoding must be one of 'utf_8', 'big5', or 'gbk'.
- “互联网女神”带你看移动互联网时代新商业图景
- 静态代码块与代码块与构造器
- Java Web项目中读取