Convertidor de cURL: cURL a fetch, Python, Axios y más
Pega un comando curl, por ejemplo uno copiado de las DevTools de tu navegador, y obtén código listo para usar en 8 lenguajes. Convierte cabeceras, cuerpos JSON, formularios, subida de archivos, autenticación y cookies.
Funciona en tu navegadorSin registroNo se sube nada
Cómo usar: Convertidor de cURL
- Copia una petición como cURL: en las DevTools de Chrome o Firefox, haz clic derecho sobre una petición en la pestaña Network → Copy → Copy as cURL.
- Pégala en el cuadro de entrada. Se admiten comandos multilínea con
\, continuaciones^de Windows y cadenas$'…'. - Elige el destino: JavaScript fetch, Axios, Node.js, Python requests, Python httpx, Go, PHP o HTTPie.
- Lee las advertencias bajo la salida. Indican las opciones que no tienen equivalente en el lenguaje de destino.
- Copia el código o descárgalo como archivo.
¿Por qué convertir comandos curl a código?
curl es el idioma común de HTTP. La documentación de las APIs muestra ejemplos en curl, las DevTools del navegador exportan peticiones como curl y los equipos de soporte envían reproducciones en curl. Cuando quieres esa petición dentro de una aplicación tienes que reescribirla a mano: pasar cada -H a un objeto de cabeceras, convertir -d en un cuerpo, transformar -u en basic auth y recordar que -G mueve los datos a la query string. Este convertidor hace esa traducción por ti y genera código que puedes pegar directamente en un proyecto.
Opciones de curl admitidas
| Opción | Se convierte en |
|---|---|
-X, -I, -G | Método HTTP (se deduce POST cuando hay cuerpo) |
-H, -A, -e, -b | Cabeceras, User-Agent, Referer y cookies |
-d, --data-raw, --data-binary, --data-urlencode, --json | Cuerpo de la petición: objetos JSON, campos de formulario o texto sin formato |
-F | Datos de formulario multipart, incluidas subidas @file |
-u, --oauth2-bearer | Basic auth o un token Bearer |
-k, -L, -m, -x, --compressed | Verificación TLS, redirecciones, tiempo de espera, proxy y compresión |
Los cuerpos JSON se convierten en objetos reales
Cuando la petición envía JSON (una cabecera Content-Type: application/json, --json o un cuerpo que se puede analizar como JSON), el convertidor genera estructuras de datos nativas en lugar de una cadena escapada: JSON.stringify({...}) para fetch, un objeto plano para Axios y json= con un dict de Python (True, False, None) para requests y httpx. Así es fácil editar el payload y rellenarlo con variables.
Diferencias a tener en cuenta
Los navegadores no pueden desactivar la comprobación de certificados ni enrutar una sola petición a través de un proxy, así que -k y -x solo aparecen como comentarios en el código fetch para navegador. curl no sigue redirecciones salvo que pases -L, mientras que fetch, requests y Go las siguen por defecto. Un cuerpo enviado con -d sin Content-Type se codifica como formulario en curl; si parece JSON, el convertidor lo envía como JSON y te lo indica en una advertencia.
Preguntas frecuentes
¿Se envía mi comando curl a un servidor?
¿Cómo copio una petición como cURL desde Chrome?
¿Gestiona la subida de archivos?
-F name=@file se convierte en FormData en JavaScript, en un dict files= en Python, en mime/multipart en Go y en CURLFile en PHP. -d @file y -T file leen el cuerpo de la petición desde un archivo.¿Qué pasa con las opciones que el convertidor no conoce?
-s, -v o -o, se ignoran porque no cambian la petición.