# Convertisseur cURL vers Go (net/http)

Convertit une commande cURL en un extrait de code Go net/http avec http.NewRequest, en-têtes et corps

> Page canonique: https://elysiatools.com/fr/tools/curl-to-go

- **Catégorie:** Development

- **Mots-clés:** curl, convertir, go, golang, net/http, http, api, code

## Présentation

Ce convertisseur cURL vers Go vous permet de transformer instantanément vos commandes cURL en code Go natif utilisant le package standard net/http. Il génère automatiquement la structure de la requête avec http.NewRequest, configure les en-têtes HTTP requis et gère le corps de la requête de manière propre et structurée.

## Entrées

- **Commande cURL** (textarea): curl -X POST https://api.example.com/users \ -H "Content-Type: application/json" \ -d '{"name":"Alice"}'
- **Embellir le corps** (checkbox)
- **Inclure des commentaires** (checkbox)

## Quand l'utiliser

- Lors de l'intégration d'une API externe documentée uniquement avec des exemples de commandes cURL dans une application Go.
- Pour tester rapidement des requêtes HTTP complexes en Go sans écrire manuellement le code répétitif de configuration de net/http.
- Pour migrer des scripts shell basés sur cURL vers des services ou microservices écrits en Go.

## Fonctionnement

- Collez votre commande cURL complète dans la zone de texte dédiée.
- Choisissez si vous souhaitez embellir le corps de la requête et inclure des commentaires explicatifs dans le code généré.
- Le convertisseur analyse les arguments cURL et génère instantanément le code Go correspondant avec net/http.

## Cas d'usage

- Traduction rapide d'une requête POST avec un payload JSON complexe en structure Go exploitable.
- Génération de code Go pour des requêtes d'API sécurisées nécessitant des jetons d'autorisation et des en-têtes personnalisés.
- Prototypage rapide de clients HTTP en Go à partir de requêtes testées préalablement dans le terminal.

## Questions fréquentes

### Quels types de requêtes cURL sont pris en charge ?

Le convertisseur prend en charge les méthodes GET, POST, PUT, DELETE, PATCH, ainsi que la gestion des en-têtes personnalisés et des corps de requête JSON ou texte.

### Le code généré utilise-t-il des bibliothèques tierces ?

Non, le code généré utilise uniquement le package standard net/http de Go, évitant ainsi l'ajout de dépendances externes.

### Comment est géré le corps de la requête (payload) ?

Le corps de la requête est converti en un flux de lecture (strings.NewReader ou bytes.NewBuffer) et passé à http.NewRequest.

### Puis-je conserver le formatage JSON d'origine ?

Oui, en activant l'option "Embellir le corps", le JSON envoyé dans la commande cURL est formaté de manière lisible dans le code Go.

### Les en-têtes d'authentification comme Bearer tokens sont-ils convertis ?

Oui, tous les en-têtes définis via -H ou --header sont convertis en appels req.Header.Set().

## Outils associés

- [Convertisseur cURL vers JavaScript (axios)](https://elysiatools.com/fr/tools/curl-to-js-axios): Convertit une commande cURL en un extrait de code JavaScript axios avec objet de config, en-têtes et données
- [Convertisseur cURL vers JavaScript (fetch)](https://elysiatools.com/fr/tools/curl-to-js-fetch): Convertit une commande cURL en un extrait de code JavaScript fetch() avec en-têtes, corps et méthode
- [Convertisseur cURL vers PHP (cURL)](https://elysiatools.com/fr/tools/curl-to-php): Convertit une commande cURL en un extrait de code PHP cURL avec curl_setopt, en-têtes et champs POST
- [Convertisseur cURL vers Python (requests)](https://elysiatools.com/fr/tools/curl-to-python): Convertit une commande cURL en un extrait de code Python requests avec en-têtes, données et méthode
- [Testeur de stress de contrat API](https://elysiatools.com/fr/tools/api-contract-stress-tester): Genere des tests de valeurs limites depuis OpenAPI 3.x et peut les envoyer a un backend reel pour reperer les ecarts de contrat.
- [Explorateur d’Expressions Cron](https://elysiatools.com/fr/tools/cron-expression-explainer): Analyse une expression cron (5/6 champs ou Quartz) en description en langage naturel, détaille les champs et liste les N prochaines exécutions dans tout fuseau IANA, avec une explication IA
- [Sync de palette Tailwind](https://elysiatools.com/fr/tools/tailwind-color-palette-sync): Entrez des HEX, choisissez le schéma de noms (échelle 50–950 / nom unique / imbrication) et générez le fragment theme.extend.colors de tailwind.config.ts avec les niveaux WCAG AA/AAA. Dark mode optionnel.
- [Convertisseur cURL vers HAR](https://elysiatools.com/fr/tools/curl-to-har-converter): Convertit une commande cURL en entrée de requête HAR 1.2 portable.

## Exemples

- [Exemples de Traitement d'Images Web Python](https://elysiatools.com/fr/samples/web-image-processing-python): Exemples de traitement d'images Web Python utilisant PIL/Pillow incluant la lecture, l'enregistrement, le redimensionnement et la conversion de format
- [Exemples de Traitement d'Images Android Java](https://elysiatools.com/fr/samples/android-image-processing-java): Exemples de traitement d'images Android Java incluant lecture/écriture, mise à l'échelle et conversion de format
- [Exemples de Traitement d'Images Android Kotlin](https://elysiatools.com/fr/samples/android-image-processing-kotlin): Exemples de traitement d'images Android Kotlin incluant lecture/écriture, mise à l'échelle et conversion de format
- [Exemples de Traitement d'Images Web Rust](https://elysiatools.com/fr/samples/web-image-processing-rust): Exemples de traitement d'images Web Rust incluant lecture/écriture, redimensionnement et conversion de format

## Contenu associé

- [Conversion et test de requêtes API avec cURL](https://elysiatools.com/fr/hubs/curl-to-code-converter): Convertissez une requête cURL en code ou HAR, testez-la prudemment et interprétez le statut HTTP sans perdre les en-têtes, le corps ni le contexte d’authentification.
