package cn.flightfeather.supervision.lightshare
|
|
import org.springframework.core.annotation.Order
|
import javax.servlet.*
|
import javax.servlet.annotation.WebFilter
|
import javax.servlet.http.HttpServletResponse
|
import javax.servlet.ServletException
|
import java.io.IOException
|
import javax.servlet.ServletResponse
|
import javax.servlet.ServletRequest
|
import javax.servlet.FilterConfig
|
|
|
|
/**
|
* @author riku
|
* Date: 2020/8/11
|
*/
|
@Order(1)
|
@WebFilter(filterName = "corsFilter", urlPatterns = ["/*"])
|
class CORSFilter : Filter {
|
@Throws(ServletException::class)
|
override fun init(filterConfig: FilterConfig) {
|
println("初始化filter==========================")
|
}
|
|
@Throws(IOException::class, ServletException::class)
|
override fun doFilter(servletRequest: ServletRequest, servletResponse: ServletResponse, filterChain: FilterChain) {
|
val response = servletResponse as HttpServletResponse
|
response.setHeader("Access-Control-Allow-Origin", "*") // 这里最好明确的写允许的域名
|
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT")
|
response.setHeader("Access-Control-Max-Age", "3600")
|
response.setHeader("Access-Control-Allow-Headers", "Content-Type,Access-Token,Authorization,ybg")
|
filterChain.doFilter(servletRequest, servletResponse)
|
}
|
|
override fun destroy() {
|
println("销毁filter==========================")
|
}
|
}
|