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.
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
- En las herramientas de desarrollo, abre Red y elige guardar todo como HAR con contenido
- Suelta aquí el archivo .har, o pega su contenido
- Elige una petición de la lista, o deja Todas para convertirlas todas
- 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.
Todas las herramientas de ArrayKit