URL Encoder / Decoder

One input per line. Output is numbered to match the input order.
Pinned tools are listed in your favourites on the home page.Copies a link to this tool that carries your current input, so it opens ready to run.Gives you an iframe snippet for putting this tool on your own site.
Ctrl+Enter Run  · Ctrl+Shift+C Copy  · Esc Clear

Understand URL Encoder / Decoder

El percent-encoding reescribe los caracteres que tienen significado estructural en una URL para que puedan transmitirse como datos.

How it works

Cada carácter fuera del conjunto no reservado (A–Z, a–z, 0–9 y - _ . ~) se sustituye por un % seguido de los dos dígitos hexadecimales de cada byte UTF-8 que ocupa, de modo que un espacio pasa a %20 y é pasa a %C3%A9. Los dos modos son las dos funciones de JavaScript, y la diferencia está en lo que dejan intacto: encodeURI conserva los caracteres que construyen una URL — : / ? # [ ] @ & = + $ , — mientras que encodeURIComponent también los codifica. Use encodeURI sobre una URL completa y encodeURIComponent sobre un único valor que vaya a insertar en ella.

When to use it

  • Poner un término de búsqueda, una dirección de correo o un nombre de archivo proporcionados por el usuario dentro de una query string.
  • Construir una URL de redirección que lleva otra URL completa como valor de un parámetro.
  • Leer una URL con percent-encoding sacada de un log del servidor o de un callback de OAuth para ver qué se envió realmente.
  • Codificar un segmento de ruta que contiene espacios o caracteres no ASCII.

Watch out for

  • encodeURI es la opción equivocada para un valor suelto: deja intactos & = ? #, así que un valor que contenga & se parte en silencio en dos parámetros de consulta. Esa única diferencia explica la mayoría de los enlaces rotos.
  • Los cuerpos de formulario y muchas query strings antiguas codifican el espacio como + y no como %20. La descodificación aquí no lo revierte: decodeURIComponent deja un signo más literal.
  • Codificar dos veces es un error habitual y se ve a simple vista: %20 pasa a %2520. Cualquier %25 en una URL significa que algo se codificó una vez de más.
  • encodeURIComponent deja sin escapar ! ' ( ) * aunque el RFC 3986 los reserva, así que unos pocos servidores estrictos seguirán discrepando.

Not the right tool for: Hacer que un valor sea seguro al renderizarlo en una página. Un parámetro de URL descodificado sigue necesitando escapado HTML antes de llegar al DOM.

Frequently Asked Questions

¿Qué hace la codificación de URL?

La codificación de URL (percent-encoding) sustituye los caracteres especiales de una URL por un % seguido de su código ASCII en hexadecimal. Los espacios pasan a %20 y & pasa a %26. Así la URL es válida y todos los navegadores y servidores pueden analizarla.

¿Cuándo hay que codificar una cadena para una URL?

Codifique los valores antes de añadirlos a una query string, al cuerpo de un POST de formulario o a cualquier componente de la URL. Codifique siempre los datos introducidos por el usuario: caracteres como &, =, #, ? y + tienen significados reservados en las URL.

¿Cuál es la diferencia entre encodeURI y encodeURIComponent?

encodeURI codifica una URL completa y conserva los caracteres de estructura (: / ? # [ ] @ etc.). encodeURIComponent codifica un único valor y codifica también esos caracteres de estructura: úselo para los valores de los parámetros de consulta.

How to Use URL Encoder / Decoder

  1. Paste or type your input in the input area above.
  2. The tool processes your input automatically or click Run.
  3. Copy or download the result using the action buttons.
  4. Use Ctrl+Enter to run quickly from the keyboard.