¿Cuál es la mejor manera de codificar URL una cadena que representa la ruta URL (no el parámetro de solicitud) con JSTL?Cómo codificar una cadena que representa la ruta URL con JSTL?
<c:url value="/user/${user.name}"/>
Según any documentation I find, esto debe cuidar de él. Pero no es así Codifica maravillosamente los parámetros (<c:url value="/user/${user.name}"><c:param name="section" value="employment 4u so good"/></c:url>
) pero no estoy pasando ningún parámetro. ¿Cómo puedo codificar con seguridad una URL simple, como la anterior, sin temor a lo que podría ser ${user.name}
?
Gracias, Balus C. Esto es lo que estoy haciendo actualmente. Esperaba que hubiera algo incorporado, pero si esta es la mejor manera, que así sea. –
Curiosamente URLEncoder.encode() en realidad no es la forma correcta de codificar una URL. Es la forma correcta de codificar un parámetro URL *. * Cambia espacios a + por ejemplo. La técnica correcta es el nuevo URI (null, url, null) .toASCIIString(), que por ejemplo cambia los espacios a% 20. – EJP
La pregunta en su enlace final parece haber sido eliminada y solo es visible para 10k + usuarios. –