Conversor de HAR a cURL

Convierte las peticiones capturadas en un archivo HAR del navegador en comandos cURL ejecutables.

HAR a cURL funciona por completo en tu navegador. El archivo se analiza en tu dispositivo, así que las cookies de sesión que contiene nunca salen de él.

Creado y mantenido por Udit Agarwal

Abrir el Visor de archivos HAR

Acerca de HAR a cURL

HAR a cURL lee el archivo de red que exportan las herramientas de desarrollo del navegador y convierte cualquier petición en un comando que puedes pegar en un terminal. Es la vía más rápida para cerrar la brecha del clásico «funciona en el navegador pero no desde mi script»: cada cabecera, el método y el cuerpo de la petición se trasladan tal como los envió el navegador. Dos detalles se cuidan especialmente. El entrecomillado usa el escape POSIX para una comilla simple dentro de comillas simples, así que un cuerpo JSON con un apóstrofo no trunca el comando en silencio. Y como un HAR contiene cookies de sesión activas, un interruptor las elimina.

Características

  • Lee cualquier exportación HAR y lista todas sus peticiones
  • Filtra por URL, método o código de estado
  • Convierte una petición o todo el conjunto filtrado de una vez
  • Entrecomillado POSIX correcto para cuerpos con comillas o apóstrofos
  • Elimina cabeceras Cookie, Authorization y de clave de API bajo demanda
  • Descarta cabeceras gestionadas por el navegador y pseudocabeceras HTTP/2

Cómo usar HAR a cURL

  1. En las herramientas de desarrollo, abre Red y elige guardar todo como HAR con contenido
  2. Suelta aquí el archivo .har, o pega su contenido
  3. Elige una petición de la lista, o deja Todas para convertirlas todas
  4. Activa quitar cookies y auth si vas a compartir el comando, y cópialo

Ejemplo

Entrada

POST https://api.example.com/login with a JSON body

Salida

curl 'https://api.example.com/login' \
  -H 'Content-Type: application/json' \
  --data-raw '{"user":"jo"}' \
  --compressed

No se emite ningún -X para un POST con cuerpo, porque --data ya lo implica.

Errores comunes y solución de problemas

  • El comando se ejecuta pero el servidor devuelve 401 o 403. — Probablemente se eliminó la cabecera de autenticación, o la sesión que llevaba ha caducado. Desactiva la opción de quitar cookies y vuelve a exportar el HAR con la sesión iniciada.
  • La herramienta dice que el JSON no es un archivo HAR. — Un HAR tiene un objeto log de primer nivel con un array entries. Un cuerpo de respuesta guardado o un JSON copiado no tendrán esa estructura: vuelve a exportar con la opción de guardar todo como HAR.
  • Falta el cuerpo de una petición en el comando. — Exporta incluyendo el contenido. Sin él el HAR registra las cabeceras pero omite los cuerpos, así que no hay nada que poner en --data-raw.

Preguntas frecuentes

¿Cómo exporto un archivo HAR desde mi navegador?
Abre las herramientas de desarrollo, ve al panel Red, reproduce la petición y luego haz clic derecho en cualquier fila y elige guardar todo como HAR con contenido. Chrome, Edge, Firefox y Safari ofrecen alguna versión de esto.
¿Por qué el comando cURL generado no incluye -X POST?
Porque --data-raw ya implica POST, y añadir -X encima puede cambiar cómo gestiona cURL las redirecciones. El indicador de método solo se emite cuando hace falta de verdad, como en PUT, PATCH o DELETE.
¿Es seguro compartir un comando cURL salido de un archivo HAR?
Por defecto no: un HAR captura cookies de sesión activas y cabeceras de autorización, que equivalen a una contraseña. Activa antes la opción de eliminarlas.
¿Se sube mi archivo HAR al convertirlo?
No. El archivo se analiza por completo en tu navegador, algo que importa porque un HAR suele contener cookies de sesión y datos personales de cada petición capturada.

Herramientas relacionadas

  • Visor de HAR — Abre un archivo .har e inspecciona cada petición y respuesta.
  • cURL a Fetch — Convierte un comando curl en una llamada fetch() de JavaScript.
  • curl a Python — Convierte un comando curl en un script de Python con requests.
  • Cliente de API — Envía peticiones HTTP, crea cabeceras y parámetros e inspecciona respuestas; guarda tus últimas 25.
  • curl a Node.js — Convierte un comando curl en código de Node.js con axios.
  • Analizador de URL — Descompone una URL en sus partes y lista los parámetros de consulta.

Más herramientas de Herramientas de API

  • Postman a cURL — Convierte una colección de Postman en comandos cURL.
  • cURL a C# — Convierte un comando curl en código C# con HttpClient.
  • cURL a Java — Convierte un comando curl en código Java con HttpClient.
  • cURL a Ruby — Convierte un comando curl en código Ruby con Net::HTTP.
  • cURL a PowerShell — Convierte un comando curl en una llamada Invoke-RestMethod de PowerShell.
  • cURL a Swift — Convierte un comando curl en código Swift con URLSession.
  • cURL a Dart — Convierte un comando curl en código Dart con package:http.
  • cURL a Fetch — Convierte un comando curl en una llamada fetch() de JavaScript.
  • Analizador de URL — Descompone una URL en sus partes y lista los parámetros de consulta.
  • Cliente de API — Envía peticiones HTTP, crea cabeceras y parámetros e inspecciona respuestas; guarda tus últimas 25.
  • Generador de URL y UTM — Construye y valida URL de producción codificadas con parámetros UTM.
  • Probador de API de OpenAI — Crea, ejecuta y copia solicitudes a la API de Chat Completions de OpenAI como cURL, Python y JavaScript.

Ver todas las herramientas de Herramientas de API (24) · Todas las herramientas