0
我使用下面的筛选,明确设置内容类型为响应应用程序/ JSON:无法设置内容类型/ MIME类型的Java Servlet
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) servletResponse;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setContentType("application/json");
response.setCharacterEncoding("utf-8");
response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
filterChain.doFilter(servletRequest, servletResponse);
}
它不工作,但是,并且在浏览器中请求时的内容类型是text/html。其他头文件工作正常。
情况下游到'HttpServletResponse'什么? –
'filterChain'覆盖了标题吗?如果你在'doFilter'之后移动'setContentType'会怎么样? –
响应由Spring @RestController分派。将setContentType移动到方法的底部并不会改变结果。 – Soggiorno