[問題] CompressionFilter的問題

看板java作者 (小小涼)時間10年前 (2015/04/14 14:58), 10年前編輯推噓0(003)
留言3則, 1人參與, 最新討論串1/1
大家好 最近開始接觸 Servlet 還有 JSP 問題 上網找了良葛格的網站閱讀 看到了 HttpServletResponseWrapper教學 利用 HttpServletResponseWrapper做出 一個壓縮處理的Filter 參考 http://openhome.cc/Gossip/ServletJSP/ResponseWrapper.html 程式碼完全用網站上的連結 我又寫了一個 servlet 想試看看 是否經過Filter處理後 能輸出壓縮檔 servlet 程式碼 response.setContentType("text/html;charset=UTF-8"); response.setHeader("Content-Disposition", "attachment; filename=output.gz"); PrintWriter out = response.getWriter(); out.write("測試用"); out.flush(); out.close(); 可是結果輸出的 output.gz 開檔時卻是出現錯誤 檔案未知或損壞 後來上網找了一篇方法 說 Filter doFilter(..)的方法 把 response.addHeader("Content-Encoding", "gzip"); 這行去掉 就把問題解決了 但是不知道真正的原因是甚麼 不知道板上大大有遇過這情形嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.34.114.1 ※ 文章網址: https://www.ptt.cc/bbs/java/M.1428994713.A.3C8.html ※ 編輯: ipod7788 (1.34.114.1), 04/14/2015 15:02:30

04/23 12:17, , 1F
可以再看看他寫的filter的實作與設定 url-pattern限制一下
04/23 12:17, 1F

04/23 12:19, , 2F
ResponseWrapper上面說是對所有的路徑 request串流壓縮成gzip
04/23 12:19, 2F

04/23 12:22, , 3F
但額外寫的servlet attachment 那個gz不是這個content-encodi
04/23 12:22, 3F
文章代碼(AID): #1LBBgPF8 (java)
文章代碼(AID): #1LBBgPF8 (java)