问题描述
火狐
css 未载入,因为它的 MIME 类型 "text/html" 不是 "text/css"
chrome
Resource interpreted as Stylesheet but transferred with MIME type text/html: css失效
产生原因
过滤器过滤路径设置为 : /*
对页面所有请求进行了过滤,该过滤中将text/css文件转为了text/html类型,所以页面会提示mime类型 "text/html"不是"text/css"
解决方案
过滤器设置忽略静态文件,不要对静态文件进行过滤
public class CharacterEncodingFilter extends HttpFilter {
@Override
public void doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException {
//解决POST 请求乱码
request.setCharacterEncoding("UTF-8");
String URI = request.getRequestURI() ;
// 排除静态页面
if (URI.contains(".css") || URI.contains(".js") || URI.contains(".png")) {
chain.doFilter(request, response);
return ;
}
//解决响应乱码
response.setContentType("text/html;charset=UTF-8");
//放行请求
chain.doFilter(request,response);
}
}