作者:j酱油 | 来源:互联网 | 2022-12-10 12:24
我有一个完全本地化的网站,在URL路径中有一些字符,通过该Response.sendTemporaryRedirect
方法获得HTML编码:
String toReturn = /*StringEscapeUtils.unescapeHtml4(redirect)*/ redirect + "?" + URLEncoder.encode(json, "UTF-8");
response.setCharacterEncoding("UTF-8");
response.setContentType("application/json; charset=UTF-8");
java.net.URI location = new java.net.URI(toReturn);
return Response.temporaryRedirect(location).build();
重定向正在获得404,因为"%C3%B1%C3%AD"
URL片段被误解了.解码,看起来像这样:ñí
.
我已经尝试过URLDecoder.decode(url, 'UTF-8')
,StringEscapeUtils.escapeHtml4
在重定向之前没有运气.代码工作正常.
为什么javax.ws.rs.core.Response.sendTemporaryRedirect
URLEncoding URL路径?