Cómo codificar URL en Groovy?


¿Hay algún tipo de URLEncode en Groovy?

No puedo encontrar ninguna cadena → Utilidad de codificación de URL de cadena.

Ejemplo: dehydrogenase (NADP+)dehydrogenase%20(NADP%2b)

(+ en lugar de %20 también sería aceptable, ya que algunas implementaciones lo hacen)

Author: Nicolas Raoul, 2012-04-17

1 answers

Podrías usar java.net.URLEncoder.

En el ejemplo anterior, los corchetes también deben estar codificados:

def toEncode = "dehydrogenase (NADP+)"
assert java.net.URLEncoder.encode(toEncode, "UTF-8") == "dehydrogenase+%28NADP%2B%29"

También podría agregar un método a la metaclase de string:

String.metaClass.encodeURL = {
   java.net.URLEncoder.encode(delegate, "UTF-8")
}

Y llamada simple encodeURL() en cualquier cadena:

def toEncode = "dehydrogenase (NADP+)"
assert toEncode.encodeURL() == "dehydrogenase+%28NADP%2B%29"  
 81
Author: aiolos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-11-09 17:53:21