DevToolPal
ES

Conversor de curl a código

Convierte un comando curl en código JavaScript fetch, Node.js axios, Python requests, Go, PHP, Java o C#.

Se ejecuta en local, nunca se sube

Opciones

Comando curl

0 caracteres · 0 B

Código

0 caracteres · 0 B

Qué hace esta herramienta

El conversor de curl a código transforma un comando curl en código listo para ejecutar en siete destinos: JavaScript fetch, Node.js axios, Python requests, Go net/http, PHP cURL, Java HttpClient y C# HttpClient. La documentación de APIs, Postman y las DevTools del navegador muestran las peticiones como comandos curl; esta herramienta te evita reescribir a mano el método, la URL, las cabeceras, el cuerpo y la autenticación.

El analizador está escrito específicamente para la línea de comandos de curl. Lee las comillas como lo hace bash, entiende opciones cortas agrupadas como -sSL y valores pegados como -XPOST, y conserva el orden de tus cabeceras.

Cómo usarla

  1. Pega un comando curl en la entrada o pulsa Ejemplo para probar uno.
  2. Elige el Lenguaje que quieras.
  3. Copia el resultado o descárgalo como archivo de código fuente.

Un cuerpo enviado con -d se convierte en un cuerpo codificado como formulario; --json (o un Content-Type JSON) se convierte en un cuerpo JSON, formateado cuando el lenguaje lo permite; y los campos -F se convierten en un formulario multipart con subida de archivos. -u user:password pasa a la opción de autenticación básica propia de cada lenguaje, y -k, -L, -m y -x corresponden a la verificación TLS, las redirecciones, los tiempos de espera y los proxies.

Ejemplo

Este comando envía JSON con un token bearer:

curl https://api.example.com/v1/users \
  -H 'Authorization: Bearer TOKEN' \
  --json '{"name":"Ada"}'

En Python se convierte en una llamada a requests.post() con un diccionario headers y json=json_data; en Go, en un http.NewRequest que establece las cabeceras una a una y pasa el cuerpo como un lector de cadena.

Consejos

  • Si el conversor muestra un error, el mensaje indica el problema y el cursor salta al elemento culpable, como una opción desconocida o una comilla sin cerrar.
  • Las tuberías y redirecciones tras el comando (| jq ., > out.json) se ignoran.
  • El código generado lee en tiempo de ejecución los archivos referenciados con @file, así que mantén esas rutas válidas respecto al lugar donde se ejecuta el programa.
  • Revisa los secretos antes de compartir un enlace: el botón de compartir incluye el comando en el hash del enlace.

Preguntas frecuentes

› ¿Se envía mi comando curl a un servidor?

No. El comando se analiza y convierte por completo en tu navegador, así que los tokens, cookies y contraseñas que contenga nunca salen de tu dispositivo.

› ¿Qué opciones de curl se admiten?

Las que definen la petición: -X, -H, -d, --data-raw, --data-binary, --data-urlencode, --json, -F, -u, -b, -A, -e, -G, -I, -L, -k, -m, -x, --compressed y --url. Las opciones que solo afectan a la salida de curl, como -s, -v, -o o -w, se aceptan y se ignoran.

› ¿Puedo pegar un comando copiado de las DevTools del navegador?

Sí. Usa Copiar como cURL (bash) en el panel Red. Se entienden las continuaciones de línea con \, ^ (cmd de Windows) y ` (PowerShell), así como las comillas simples, dobles y $'…'.

› ¿Qué pasa con las opciones que el código no puede reproducir?

El código generado empieza con un comentario Note, por ejemplo cuando -k no se puede expresar con fetch o cuando curl leería un archivo que el código no abre. Las opciones desconocidas se notifican con un error que señala la opción exacta.