grails2.x只有Filter,而grails3用Inerceptor代替filter了,若想继续用2.x类似的过滤器可以在gradle中加入:
compile 'org.grails:grails-plugin-filters:3.0.12'
也可以用java的方式实现Filter,然后在resources.groovy中注入
拦截器用法:
package com.interceptor
import com.filter.JsoupUtils
/**
* xss拦截器
*/
class XssInterceptor {
XssInterceptor() {
matchAll()
// match(controller: "*",action: "*").except(action: "login")
}
boolean before() {
params.each {
if(it.value && it.value instanceof String) {
it.value = JsoupUtils.cleanXss(it.value)
}
}
true
}
boolean after() { true }
void afterView() {
// no-op
}
}
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!