2
我有一些的Servlet明確地設置字符編碼,並重定向到一些servlet的Servlets response.sendRedirect(String url)似乎沒有發送編碼,爲什麼?
class Servlet1 extends HttpServle{
void doGet(.....){
// ...
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8"):
//......
response.redirect(servlet2);
}
}
class Servlet2 extends HttpServle{
void doGet(.....){
// ...
request.getCharacterEncoding(); // prints null ?? why???
//......
}
}
那麼,爲什麼字符編碼不是與發送請求?
感謝BalusC,你實際上已經將我轉發給了這個好工具(FireBug),它確實有幫助。 那麼,我如何告訴客戶端(從Servlet代碼)設置字符集之前重定向迴應新的URL? 如你所知,傾倒http-equiv不這樣做http://stackoverflow.com/questions/2861886/does-a-servlet-knows-the-encoding-of-the-sent-form-that-specified-使用http-equi/2862066#2862066 – 2010-05-21 02:14:07
你不能。否則我會在這裏和相關問題中回答。只需設置響應內容類型。客戶將使用它。然而,我在使用GB2312時加入了問號,我個人更喜歡UTF-8,因爲這得到了更廣泛的支持,並且具有更好的字符覆蓋率。但是,這當然取決於你的觀衆。如果你只針對GB2312的人,那麼它應該沒有問題。 – BalusC 2010-05-21 02:18:47
關於GB2312,這只是用戶要求! – 2010-05-21 02:24:26