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() { } }