package com.cloud.user.filter;
|
|
import com.cloud.user.utils.EnumStr;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
|
|
import javax.servlet.*;
|
import javax.servlet.annotation.WebFilter;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.IOException;
|
|
@Slf4j
|
@Component
|
@WebFilter(urlPatterns = "/httpImage", filterName = "httpImageFilter")
|
public class HttpImageFilter implements Filter {
|
|
@Autowired
|
private EnumStr enumStr;
|
@Override
|
public void init(FilterConfig filterConfig) throws ServletException {
|
|
}
|
|
@Override
|
public void doFilter(ServletRequest request, ServletResponse response, FilterChain fc) throws IOException, ServletException {
|
|
HttpServletRequest req = (HttpServletRequest) request;
|
HttpServletResponse resp = (HttpServletResponse) response;
|
String url = req.getRequestURI();
|
if (url.startsWith("/httpImage")){
|
String group = url.substring(11);
|
if (group.contains("http")){
|
resp.sendRedirect(group);
|
resp.setHeader("Access-Control-Allow-Origin", "*");
|
return;
|
}
|
resp.sendRedirect(enumStr.getHttpImgUrl()+group);
|
resp.setHeader("Access-Control-Allow-Origin", "*");
|
return;
|
}else {
|
fc.doFilter(request,response);
|
}
|
}
|
|
@Override
|
public void destroy() {
|
|
}
|
}
|