# Conversor de cURL a Go (net/http)

Convierte un comando cURL en un fragmento de código Go net/http con http.NewRequest, cabeceras y cuerpo

> Página canónica: https://elysiatools.com/es/tools/curl-to-go

- **Categoría:** Development

- **Palabras clave:** curl, convertir, go, golang, net/http, http, api, código

## Descripción general

Esta herramienta te permite convertir comandos cURL en código nativo de Go utilizando el paquete estándar net/http. Genera de forma instantánea la estructura necesaria para realizar peticiones HTTP, incluyendo la inicialización de http.NewRequest, la configuración de cabeceras personalizadas y el manejo del cuerpo de la petición.

## Entradas

- **Comando cURL** (textarea): curl -X POST https://api.example.com/users \ -H "Content-Type: application/json" \ -d '{"name":"Alice"}'
- **Embellecer el cuerpo** (checkbox)
- **Incluir comentarios** (checkbox)

## Cuándo usarlo

- Cuando necesitas integrar una petición HTTP externa probada en cURL dentro de una aplicación escrita en Go.
- Al migrar scripts de shell o comandos de terminal a servicios backend desarrollados en Golang.
- Durante la fase de depuración y desarrollo de APIs para generar rápidamente clientes HTTP en Go sin escribir código repetitivo.

## Cómo funciona

- Pega tu comando cURL completo en el campo de texto principal.
- Configura las opciones para embellecer el cuerpo de la petición o incluir comentarios explicativos en el código generado.
- Copia el código Go (net/http) resultante que incluye la creación del cliente, la petición, las cabeceras y el cuerpo de datos.

## Casos de uso

- Conversión de llamadas de API de documentación (usualmente provistas en cURL) a código Go.
- Automatización de tareas de red y web scraping portando comandos cURL a binarios compilados en Go.
- Creación rápida de pruebas de integración y clientes HTTP en microservicios Golang.

## Preguntas frecuentes

### ¿Qué paquete de Go utiliza el código generado?

Utiliza el paquete estándar net/http de Go, evitando dependencias externas.

### ¿Soporta peticiones POST con cuerpo JSON?

Sí, procesa los datos del parámetro -d o --data y los convierte en un lector de bytes compatible con Go.

### ¿Qué hace la opción "Embellecer el cuerpo"?

Formatea el cuerpo de la petición JSON o de texto para que sea más legible dentro del código Go generado.

### ¿Puedo incluir cabeceras personalizadas?

Sí, todos los parámetros -H o --header de cURL se convierten automáticamente en llamadas a req.Header.Set.

### ¿Es necesario instalar alguna librería en Go para usar este código?

No, el código generado utiliza únicamente la biblioteca estándar de Go.

## Herramientas relacionadas

- [Conversor de cURL a JavaScript (axios)](https://elysiatools.com/es/tools/curl-to-js-axios): Convierte un comando cURL en un fragmento de código JavaScript axios con objeto de configuración, cabeceras y datos
- [Conversor de cURL a JavaScript (fetch)](https://elysiatools.com/es/tools/curl-to-js-fetch): Convierte un comando cURL en un fragmento de código JavaScript fetch() con cabeceras, cuerpo y método
- [Conversor de cURL a PHP (cURL)](https://elysiatools.com/es/tools/curl-to-php): Convierte un comando cURL en un fragmento de código PHP cURL con curl_setopt, cabeceras y campos POST
- [Conversor de cURL a Python (requests)](https://elysiatools.com/es/tools/curl-to-python): Convierte un comando cURL en un fragmento de código Python requests con cabeceras, datos y método
- [Probador de estres de contratos API](https://elysiatools.com/es/tools/api-contract-stress-tester): Genera casos de prueba de valores limite desde OpenAPI 3.x y opcionalmente los envia a un backend real para detectar desviaciones del contrato.
- [Explicador de Expresiones Cron](https://elysiatools.com/es/tools/cron-expression-explainer): Analiza una expresión cron de 5/6 campos o Quartz en una descripción en lenguaje natural, desglosa los campos y lista las próximas N ejecuciones en cualquier zona IANA, con una explicación natural generada por IA
- [Sincronizador de paleta Tailwind](https://elysiatools.com/es/tools/tailwind-color-palette-sync): Introduce HEX, elige esquema de nombres (escala 50–950 / nombre único / anidamiento) y genera el fragmento theme.extend.colors de tailwind.config.ts con niveles WCAG AA/AAA por color. Modo oscuro opcional.
- [Convertidor de cURL a HAR](https://elysiatools.com/es/tools/curl-to-har-converter): Convierte un comando cURL en una entrada de solicitud HAR 1.2 portátil.

## Ejemplos

- [Ejemplos de Procesamiento de Imágenes Web Python](https://elysiatools.com/es/samples/web-image-processing-python): Ejemplos de procesamiento de imágenes Web Python usando PIL/Pillow incluyendo lectura, guardado, redimensionamiento y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Android Java](https://elysiatools.com/es/samples/android-image-processing-java): Ejemplos de procesamiento de imágenes Android Java incluyendo lectura/escritura, escalado y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Android Kotlin](https://elysiatools.com/es/samples/android-image-processing-kotlin): Ejemplos de procesamiento de imágenes Android Kotlin incluyendo lectura/escritura, escalado y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Web Rust](https://elysiatools.com/es/samples/web-image-processing-rust): Ejemplos de procesamiento de imágenes Web Rust incluyendo lectura/escritura, escalado y conversión de formato

## Contenido relacionado

- [Conversión y prueba de solicitudes API con cURL](https://elysiatools.com/es/hubs/curl-to-code-converter): Convierte cURL en código o HAR, prueba la solicitud de forma segura e interpreta el estado HTTP conservando cabeceras, cuerpo y contexto de autenticación.
