Codificar valores de parámetros URL
El modo estándar convierte espacios en %20 y conserva el significado del signo +. El modo formulario convierte espacios en + y los interpreta como espacios al decodificar. Elige el modo de acuerdo con el sistema que recibe el parámetro.
Espacios y caracteres reservados en URL
Codifica valores individuales, no una URL completa con separadores como ? y &. Decodificar texto con secuencias porcentuales incompletas produce un error. Comprueba que el receptor no vuelva a codificar un valor ya codificado.
La codificación usa encodeURIComponent y deja sin escapar !, apóstrofos, paréntesis y *. No es un normalizador RFC 3986 estricto para firmar solicitudes. Comprueba los requisitos exactos de la API receptora.
¿Debo codificar toda la URL o un valor de parámetro?
Codifica cada valor por separado. Codificar toda la URL también escapa : / ? y &, cambiando su estructura. El modo formulario usa + para espacios y lo interpreta como espacio al decodificar; el modo porcentual usa %20 y conserva un + literal al decodificar.