2

这是我的代码(在 Google App Engine 上看到)

public void doGet(HttpServletRequest request, HttpServletResponse response) {       
    response.setCharacterEncoding("UTF-8");
    response.setContentType("text/html; charset=UTF-8");
    response.setHeader("testHeader1", "hi");  // Works fine
    response.setHeader("testHeader2", "שלום"); // Header not visible on Chrome client
    response.sendRedirect("/myUrl#שלום"); // Redirect does not work on browser (302 sent but Location header is absent)

谢谢!

4

1 回答 1

1

指定标题中的RFC 2047非 ASCII 字符,但大多数服务器和浏览器尚不支持。

因此,如果要发送非 ASCII 字符,则应将文本编码为 ASCII 并发送。

您可以java.net.URLEncoder在重定向时使用编码并java.net.URLDecoder在另一端解码。

于 2012-06-12T11:36:49.230 回答