package com.terra.common.interceptor;
|
|
import javax.servlet.*;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.IOException;
|
|
/**
|
* 跨域过滤器
|
* @author WWW
|
* @date 2022-09-27
|
*/
|
public class CrosFilter implements Filter {
|
private static final String OPTIONS = "OPTIONS";
|
|
@Override
|
public void init(FilterConfig filterConfig) {
|
//
|
}
|
|
@Override
|
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
|
HttpServletResponse response = (HttpServletResponse) res;
|
HttpServletRequest request = (HttpServletRequest) req;
|
if (OPTIONS.equalsIgnoreCase(request.getMethod())) {
|
response.setHeader("Access-Control-Allow-Origin", "*");
|
response.setHeader("Access-Control-Allow-Credentials", "true");
|
response.setHeader("Access-Control-Allow-Methods", "GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS");
|
response.setHeader("Access-Control-Max-Age", "3600");
|
response.setHeader("Access-Control-Allow-Headers", "*");
|
|
response.setStatus(HttpServletResponse.SC_OK);
|
} else {
|
chain.doFilter(req, res);
|
}
|
}
|
|
@Override
|
public void destroy() {
|
//
|
}
|
}
|