curl vers C# HttpClient

Collez une commande curl, obtenez un code HttpClient .NET 8 propre, simple ou sous forme de typed client.

Fonctionne en local · aucun envoi
curl command
C#
Parsed request
Notes

Ce que fait l’outil

Collez une commande curl et obtenez du code C# qui envoie la même requête avec HttpClient. L’outil comprend ce que produisent réellement les DevTools et Postman : « Copy as cURL (bash) » avec des chaînes $'...', « Copy as cURL (cmd) » avec des échappements ^, les options --location / --data-urlencode de Postman, les continuations de ligne avec \, ^ ou un accent grave, et les options combinées comme -sSLk.

Fonctionnalités notables

  • Deux styles : un HttpClient simple avec un SocketsHttpHandler réutilisable, ou une classe typed client enregistrée avec AddHttpClient<T>() pour IHttpClientFactory, avec BaseAddress, délais et paramètres du handler dans l’enregistrement.
  • Le bon type de contenu : les corps JSON deviennent JsonContent.Create(...) avec un objet anonyme (ou un littéral de chaîne brute si vous préférez conserver les octets exacts), les données de formulaire deviennent FormUrlEncodedContent, et -F devient MultipartFormDataContent avec des parties fichier. Un corps multipart brut copié depuis les DevTools est redécoupé en parties.
  • Une authentification correcte : -u, --oauth2-bearer et les en-têtes Authorization utilisent AuthenticationHeaderValue ; --digest / --ntlm utilisent NetworkCredential.
  • Les en-têtes gérés par HttpClient lui-même sont ignorés avec une remarque : Host, Content-Length, Connection et Accept-Encoding (remplacé par la décompression automatique). Les en-têtes sec-ch-* / sec-fetch-* propres au navigateur peuvent être retirés.
  • Les remarques expliquent tout ce qui demande votre attention : -k, identifiants dans le code, JSON envoyé sans Content-Type, variables shell, options ignorées.

Utilisation

Collez la commande, choisissez HttpClient ou Typed client, puis copiez ou téléchargez le fichier .cs. Le tableau de la requête analysée montre exactement comment la commande a été comprise. Cliquez sur Exemple pour parcourir des exemples Chrome, Postman, Windows cmd et envoi de fichier.

Confidentialité

Tout s’exécute dans votre navigateur ; rien n’est envoyé nulle part. La dernière commande n’est conservée dans le stockage local que si elle ne contient aucun identifiant (jetons, cookies, mots de passe).