java setcontenttype_response.setContentType()在Java过滤器中重置
我試圖在過濾器中將壓縮文件的內容類型設置為正確的mime類型,而不是application / gzip。這是我的一些代碼:
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException
{
final HttpServletRequest request = (HttpServletRequest) servletRequest;
final HttpServletResponse response = (HttpServletResponse) servletResponse;
String reqUrl = request.getRequestURI();
if (reqUrl.endsWith(gzExt))
{
response.setHeader("Content-Encoding", "gzip");
response.setContentType("text/javascript");
System.out.println("Set header " +reqUrl +", " + response.getContentType() );
filterChain.doFilter(request, response);
System.out.println("Header now: " + reqUrl + ", " + response.getContentType() );
return;
}
}
輸出:
Set header /test.js.gz, text/javascript
Header now: /test.js.gz, application/x-gzip
在瀏覽器中,我看到content-encoding正確設置為gzip,但content-
type仍為application/x-gzip。似乎filterChain.doFilter()正在重置內容類型。
知道如何永久重置內容類型嗎?
我沒有其他過濾器。
總結
以上是生活随笔為你收集整理的java setcontenttype_response.setContentType()在Java过滤器中重置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 穿越火线怎么改名
- 下一篇: java 通道 双向原理_Java-NI