# Conversor de cURL para Go (net/http)

Converte um comando cURL em um snippet de código Go net/http com http.NewRequest, cabeçalhos e corpo

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

- **Categoria:** Development

- **Palavras-chave:** curl, converter, go, golang, net/http, http, api, código

## Visão geral

O Conversor de cURL para Go (net/http) é uma ferramenta prática que transforma comandos cURL em código Go nativo estruturado. Ele gera automaticamente requisições usando o pacote padrão net/http, configurando cabeçalhos, métodos HTTP e o corpo da requisição de forma limpa e legível.

## Entradas

- **Comando cURL** (textarea): curl -X POST https://api.example.com/users \ -H "Content-Type: application/json" \ -d '{"name":"Alice"}'
- **Embelezar o corpo** (checkbox)
- **Incluir comentários** (checkbox)

## Quando usar

- Ao migrar testes de API feitos no terminal com cURL para uma aplicação ou microsserviço escrito em Go.
- Quando precisar integrar rapidamente chamadas HTTP externas no seu código Go sem escrever manualmente a estrutura de http.NewRequest.
- Durante a depuração de integrações de API, convertendo requisições prontas do Postman ou Insomnia exportadas como cURL em código Go.

## Como funciona

- Insira ou cole o comando cURL completo no campo de texto indicado.
- Escolha se deseja formatar o corpo da requisição (pretty body) e se quer incluir comentários explicativos no código gerado.
- A ferramenta analisa os parâmetros do cURL e gera instantaneamente o código Go equivalente usando a biblioteca padrão net/http.

## Casos de uso

- Integração rápida de webhooks ou APIs de terceiros em projetos Go a partir de exemplos de documentação fornecidos em cURL.
- Automação de scripts de teste de integração, convertendo chamadas de terminal em testes unitários em Go.
- Aprendizado prático de como estruturar requisições HTTP complexas com autenticação e payloads usando a biblioteca padrão do Go.

## Perguntas frequentes

### A ferramenta suporta bibliotecas externas do Go?

Não, a ferramenta gera código Go utilizando estritamente o pacote padrão net/http nativo da linguagem.

### Como o corpo da requisição (payload) é tratado?

O corpo enviado via -d ou --data no cURL é convertido em um leitor de bytes adequado para a requisição Go.

### Posso converter comandos cURL com múltiplos cabeçalhos?

Sim, todos os cabeçalhos definidos com -H ou --header são mapeados e adicionados ao objeto de requisição Go usando req.Header.Set.

### O que faz a opção 'Embelezar o corpo'?

Ela formata payloads JSON ou XML no código gerado para que fiquem mais legíveis e organizados visualmente.

### A ferramenta armazena os comandos cURL enviados?

Não, a conversão é feita localmente no navegador, garantindo a privacidade dos seus dados e tokens de autenticação.

## Ferramentas relacionadas

- [Conversor de cURL para JavaScript (axios)](https://elysiatools.com/pt/tools/curl-to-js-axios): Converte um comando cURL em um snippet de código JavaScript axios com objeto de configuração, cabeçalhos e dados
- [Conversor de cURL para JavaScript (fetch)](https://elysiatools.com/pt/tools/curl-to-js-fetch): Converte um comando cURL em um snippet de código JavaScript fetch() com cabeçalhos, corpo e método
- [Conversor de cURL para PHP (cURL)](https://elysiatools.com/pt/tools/curl-to-php): Converte um comando cURL em um snippet de código PHP cURL com curl_setopt, cabeçalhos e campos POST
- [Conversor de cURL para Python (requests)](https://elysiatools.com/pt/tools/curl-to-python): Converte um comando cURL em um snippet de código Python requests com cabeçalhos, dados e método
- [Testador de estresse de contrato de API](https://elysiatools.com/pt/tools/api-contract-stress-tester): Gera casos de limite a partir de OpenAPI 3.x e opcionalmente envia ao backend real para detectar divergencias do contrato.
- [Explicador de Expressões Cron](https://elysiatools.com/pt/tools/cron-expression-explainer): Analisa uma expressão cron (5/6 campos ou Quartz) em uma descrição em linguagem natural, detalha os campos e lista as próximas N execuções em qualquer zona IANA, com explicação por IA
- [Sincronizador de paleta Tailwind](https://elysiatools.com/pt/tools/tailwind-color-palette-sync): Insira HEX, escolha o esquema de nomes (escala 50–950 / nome único / aninhamento) e gere o fragmento theme.extend.colors do tailwind.config.ts com níveis WCAG AA/AAA. Dark mode opcional.
- [Conversor de cURL para HAR](https://elysiatools.com/pt/tools/curl-to-har-converter): Converte um comando cURL em uma entrada de solicitação HAR 1.2 portátil.

## Exemplos

- [Exemplos de Processamento de Imagem Web Python](https://elysiatools.com/pt/samples/web-image-processing-python): Exemplos de processamento de imagem Web Python usando PIL/Pillow incluindo leitura, salvamento, redimensionamento e conversão de formato
- [Exemplos de Processamento de Imagem Android Java](https://elysiatools.com/pt/samples/android-image-processing-java): Exemplos de processamento de imagem Android Java incluindo leitura/escrita, dimensionamento e conversão de formato
- [Exemplos de Processamento de Imagem Android Kotlin](https://elysiatools.com/pt/samples/android-image-processing-kotlin): Exemplos de processamento de imagem Android Kotlin incluindo leitura/escrita, dimensionamento e conversão de formato
- [Exemplos de Processamento de Imagem Web Rust](https://elysiatools.com/pt/samples/web-image-processing-rust): Exemplos de processamento de imagem Web Rust incluindo leitura/gravação, redimensionamento e conversão de formato

## Conteúdo relacionado

- [Conversão e teste de requisições API com cURL](https://elysiatools.com/pt/hubs/curl-to-code-converter): Converta cURL em código ou HAR, teste a requisição com segurança e interprete o status HTTP preservando cabeçalhos, corpo e contexto de autenticação.
