簡體   English   中英

無法在Java Servlet中設置Content-Type / MIME-type

[英]Cannot set Content-Type / MIME-type in java servlet

我正在使用以下過濾器,顯式設置對application / json的響應的內容類型:

@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。 其他頭工作正常。

我意識到這很舊。 我遇到了這個問題,我的解決方法是:

    resp.setHeader("Content-Disposition","attachment; filename="+fname);

請參閱: http : //archive.oreilly.com/pub/a/onjava/excerpt/jebp_3/index3.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM