Référence technique et guide d'architecture

Aide-mémoire cURL vers Go (net/http) Client — Guide de référence

Convertissez des commandes cURL en code Go idiomatique et prêt pour la production avec net/http, fasthttp ou go-resty. Gestion propre des ressources et 100% privé.

Paramètres clés et contrôles

rawCurlstring

Commande cURL brute issue du terminal ou de la documentation.

Par défaut : Auto
deferCloseboolean

Génère defer resp.Body.Close() pour éviter les fuites de sockets.

Par défaut : true
includeContextboolean

Intègre context.WithTimeout pour maîtriser les délais d'exécution.

Par défaut : false
printResponseboolean

Inclut la lecture et l'affichage du corps de réponse avec io.ReadAll.

Par défaut : true

Conseils de pro et bonnes practices

Toujours appeler defer resp.Body.Close()

En Go, oublier de fermer resp.Body épuise les descripteurs de fichiers du système. Appelez defer dès confirmation de err == nil.

Réutiliser http.Client entre goroutines

Le http.Client de Go gère un pool de connexions TCP thread-safe. Évitez de créer un nouveau client pour chaque appel.

Définir des timeouts stricts

http.DefaultClient n'a pas de délai d'expiration par défaut. Spécifiez toujours client.Timeout pour éviter les blocages réseau.

Pièges courants et dépannage

Erreur undefined: strings.NewReader à la compilation

Assurez-vous que les paquets "strings" et "io" figurent dans vos imports.

Le serveur distant renvoie une erreur EOF

Contrôlez que l'en-tête Content-Type est bien défini via req.Header.Set().

Foire aux questions (FAQ)

Pourquoi defer resp.Body.Close() est-il indispensable en Go ?▼

Fermer le corps permet de recycler la connexion TCP sous-jacente. L'omettre sature les descripteurs de sockets du système d'exploitation.

Comment l'authentification cURL (-u user:pass) est-elle traitée ?▼

Elle est prise en charge par la méthode req.SetBasicAuth("user", "password").

Puis-je générer du code pour fasthttp ou go-resty ?▼

Oui, des onglets dédiés permettent d'exporter vers net/http, fasthttp et go-resty.

Des secrets d'API sont-ils transmis à un serveur ?▼

Non, l'analyse et la génération de code ont lieu à 100% dans votre navigateur.

Outils et utilitaires connexes

Tous les outils →