logo
GeekFormat

cURL Code-Generator

cURL-Eingabe

Fügen Sie einen cURL-Befehl ein, um URL, Methode, Header und Anfrage-Body automatisch zu parsen.

Analysierte Anfrage

https://api.example.com/items1 HeaderBody: 15 ZeichencurlToCode.flag.followRedirects

Generierter Code

curlToCode.target.fetch

Fügen Sie den curl-Befehl ein und erhalten Sie in Sekunden ausführbaren HTTP-Anfrage-Code in 11 Sprachen.

Ähnliche Tools

Anwendungsfälle

  • Nachdem Sie im Chrome DevTools Network-Panel mit Rechtsklick auf eine Anfrage «Copy as cURL» ausgewählt haben, fügen Sie es in dieses Tool ein, um es direkt in den Code der in Ihrem Projekt verwendeten Sprache zu konvertieren, 10-mal schneller als die Anfrage manuell zu schreiben
  • Beim Debuggen von Drittanbieter-APIs, wenn die Dokumentation curl-Beispiele angibt, konvertieren Sie sie schnell in Python requests/Java OkHttp/C# HttpClient Code zur Integration in Ihr Projekt
  • Beim Debuggen von Produktionsumgebungs-Schnittstellen kopieren Sie curl-Befehle von Capture-Tools (Charles/mitmproxy/Wireshark) und konvertieren sie in Unit-Test-Code zur direkten Überprüfung
  • Beim Schreiben von API-Dokumentation wechseln Sie schnell zwischen Beispielen mehrerer Sprachen, bieten Sie lesebereiten ausführbaren Beispielcode für Leser verschiedener Tech-Stacks
  • Bei der Fehlerbehebung von Produktionsanfragen verwenden Sie curl, um das Problem zu reproduzieren, und konvertieren es dann in Code, um es an Kollegen zu senden oder ein Issue zu erstellen, damit andere es direkt reproduzieren können
  • Bei sprachübergreifender Entwicklung (z.B. Wechsel von einem Python- zu einem Go-Projekt) konvertieren Sie vorhandene curl-Anfragen schnell in HTTP-Client-Aufrufcode der neuen Sprache und sparen Zeit bei der Dokumentationssuche
  • In Shell-Skripten konvertieren Sie curl-Befehle zu PowerShell Invoke-RestMethod für Windows-Operations-Kollegen oder umgekehrt
  • HTTP-Protokoll lernen: durch Vergleich des Codes, der dieselbe Anfrage in verschiedenen Sprachen implementiert, verstehen Sie die API-Unterschiede der HTTP-Client-Bibliotheken
  • Konvertieren Sie schnell curl -X POST -d 'json' zu Code mit korrektem Content-Type und JSON-Serialisierung, vermeiden Sie Fehler bei manueller String-Konkatenation
  • Wenn Sie APIs in CI/CD-Skripten aufrufen müssen, konvertieren Sie lokal debuggte curl-Befehle in entsprechenden Skriptsprachencode zur Integration in die Pipeline

Funktionen

  • 11 Zielsprachen/Bibliotheken: deckt Frontend (JS fetch/Axios), Node.js (node-fetch), Python (requests/httpx), Go (net/http), PHP (cURL), Java (OkHttp), C# (HttpClient), PowerShell (Invoke-RestMethod), Kommandozeile (wget) ab, alle gängigen Tech-Stacks
  • Intelligente Analyse von curl-Befehlen: erkennt automatisch URL, HTTP-Methode, Header, Body, unterstützt einfache/doppelte Anführungszeichen, Backslash-Escape, mehrzeilige Befehle (Backslash am Zeilenende)
  • Vollständige Unterstützung gängiger curl-Parameter: -X/--request Methode, -H/--header Header, -d/--data/-F Formular/JSON-Body, -u/--user Basic Auth, -A/--user-agent UA, -b/--cookie Cookie, -e/--referer Referer, -L/--location Umleitungen folgen, --compressed automatische Dekomprimierung, -k/--insecure Zertifikatsprüfung überspringen, -I/--head HEAD-Anfrage
  • Intelligente Erkennung von JSON-Body: erkennt Content-Type application/json und serialisiert automatisch mit JSON.parse/JSON.stringify/requests(json=)/json=, generiert Code der Objekte direkt statt Strings verwendet, idiomatischer
  • Automatische Konvertierung von Basic Auth: bei Erkennung von -u user:pass wird automatisch der Header Authorization: Basic <base64> generiert, unter Verwendung nativer Auth-Mechanismen in jeder Sprache (Python auth=, OkHttp credentials, C# credentials, etc.)
  • Sicherheitsindikator-Badges: erkennt automatisch Parameter wie --compressed/-L/-k/-u, zeigt sie mit sichtbaren Badges in den Analyseergebnissen an
  • Manueller Wechsel der HTTP-Methode: nach automatischer Analyse der curl-Methode ermöglicht manuellen Wechsel der Methode im Dropdown (GET/POST/PUT, etc. 7 Typen), sofort den entsprechenden Code sehen
  • Sicheres String-Escaping: bei der Code-Generierung für jede Sprache werden native String-Literale verwendet (Python dreifache Anführungszeichen/Backslash, Go Backticks, C# @"", PHP einfache Anführungszeichen, Java doppelte Anführungszeichen mit Escape), vermeidet Syntaxfehler
  • Analysefehler-Warnungen: bei Eingabe eines ungültigen curl-Befehls (fehlende URL, beginnt nicht mit curl, POST ohne Body, etc.) wird eine orangefarbene Warnung mit spezifischem Problem angezeigt
  • 3 Beispiele mit einem Klick: bietet 3 typische Beispiele: GET+Token-Authentifizierung, POST+JSON, Basic Auth+Umleitungen folgen, um die Fähigkeit des Tools schnell zu sehen
  • Eingabe mit einem Klick löschen: Clear-Button setzt schnell zurück, keine Rückstände beim Einfügen neuer Befehle
  • 100% lokale Verarbeitung: curl-Befehle und Anfrageinhalte werden vollständig im Browser analysiert und konvertiert, nicht an Server gesendet, sensible Token/Passwörter gelangen nicht nach außen
  • Code mit einem Klick kopieren: nach Code-Generierung auf Copy-Button klicken um in Zwischenablage zu kopieren, direkt in Projekt einfügen und ausführen
  • HTTPS-Unsicher-Modus-Anpassung: Parameter -k/--insecure generiert entsprechende Konfiguration zum Überspringen der TLS-Zertifikatsprüfung in Node/Go/Python/PHP/C#/PowerShell (wget verwendet --no-check-certificate, C# zeigt ServicePointManager-Hinweis, Node setzt NODE_TLS_REJECT_UNAUTHORIZED)

Anleitung

  1. curl-Befehl abrufen: im Network-Panel der Browser-DevTools Rechtsklick auf Anfrage → Copy → Copy as cURL (bash); oder exportieren Sie cURL aus Capture-Tools wie Postman/Charles/mitmproxy; oder schreiben Sie den curl-Befehl manuell
  2. In Eingabefeld einfügen: fügen Sie den curl-Befehl in den oberen Eingabebereich ein, unterstützt ein-/mehrzeilige Befehle (mit Backslash-Fortsetzung), entfernt automatisch Zeilenumbrüche
  3. Auf Beispiel-Buttons klicken zur Referenz: wenn Sie mit dem Format nicht vertraut sind, können Sie auf «Beispiel 1/2/3» klicken, um vordefinierte curl-Befehle zu laden und den Effekt zu sehen
  4. Analyseergebnisse anzeigen: im Ergebnisbereich werden URL, Anzahl der Header, Body-Zeichen sowie Badges für Kompression/Umleitung/Zertifikat überspringen/Basic Auth angezeigt, bei Problemen werden orangefarbene Warnungen angezeigt
  5. Methode bei Bedarf anpassen: wenn die automatisch erkannte Methode falsch ist (z.B. curl hat kein -X POST, sollte aber POST sein), wechseln Sie die HTTP-Methode manuell im Dropdown
  6. Zielsprache auswählen: im Zielcode-Bereich klicken Sie auf den Button der entsprechenden Sprache (fetch/Axios/Python requests/Go/PHP/Java/C#/PowerShell/wget, etc.)
  7. Code kopieren: klicken Sie auf den Button «Code kopieren», fügen Sie ihn in Ihr Projekt/Terminal ein und führen Sie ihn aus

Häufig gestellte Fragen

Wozu dient das cURL-zu-Code-Konvertierungstool? Warum nicht direkt den curl-Befehl verwenden?

Das direkte Aufrufen von curl-Befehlen im Code (wie shell_exec, subprocess.run) erfordert das Starten von Subprozessen, ist unsicher und schwierig Fehler zu behandeln, Antwort-Header abzurufen, Typkonvertierungen durchzuführen. Produktionscode sollte native HTTP-Clients der Programmiersprache verwenden (Python requests, Java OkHttp, JS fetch, etc.). Der Wert von curl-to-code besteht darin, die curl-Befehle, die Sie aus DevTools/Capture-Tools kopieren, automatisch in HTTP-Client-Code der entsprechenden Sprache zu übersetzen, Ihnen die mechanische Arbeit zu ersparen, API-Dokumentation nachzuschlagen, Anführungszeichen manuell zu escapen, JSON/Authentifizierung zu verarbeiten, etc., kopieren und einfügen zum Ausführen.

Welche Zielsprachen/Bibliotheken werden unterstützt?

Derzeit werden 11 Ziele unterstützt: JavaScript fetch (nativ im Browser), Axios (universelle HTTP-Bibliothek für Node/Browser), Node.js node-fetch, Python requests (beliebteste HTTP-Bibliothek für Python), Python httpx (HTTP-Bibliothek der nächsten Generation mit HTTP/2 und asynchroner Unterstützung), Go net/http (Go-Standardbibliothek), PHP cURL-Erweiterung, Java OkHttp (universelle Hochleistungsbibliothek für Android/Backend), C# HttpClient (.NET-Standard-HTTP-Client), PowerShell Invoke-RestMethod (häufig in Windows-Automatisierungsskripten), wget (Kommandozeilen-Download-Tool). Wenn die von Ihnen benötigte Sprache nicht in der Liste steht (wie Ruby, Rust reqwest, Dart http, Swift URLSession, etc.), können Sie auf der Seite Feedback geben, wir werden sie je nach Nachfrage hinzufügen.

Wie kopiere ich den curl-Befehl aus Chrome DevTools?

Schritte: 1. Öffnen Sie Chrome/Edge, drücken Sie F12 um DevTools zu öffnen; 2. Wechseln Sie zum Network-Panel; 3. Aktualisieren Sie die Seite oder lösen Sie die Zielanfrage aus; 4. Finden Sie die Zielanfrage in der Anfrageliste (Sie können nach XHR/JS filtern); 5. Rechtsklick auf die Anfrage → Copy → wählen Sie «Copy as cURL (bash)» (Bash-Version empfohlen, beste Kompatibilität); 6. Fügen Sie es in das Eingabefeld dieses Tools ein. Achten Sie darauf, nicht Copy as fetch auszuwählen (das ist JS-Code, nicht curl). Firefox/Safari funktionieren ähnlich, alle haben die Option Copy as cURL.

Die Behandlung von Anführungszeichen in curl-Befehlen ist kompliziert, welche Formate werden unterstützt?

Das Tool erkennt Bash-Stil einfache Anführungszeichen, doppelte Anführungszeichen, Backslash-Escape; Windows cmd doppelte Anführungszeichen+^-Escape; PowerShell Backtick-Escape grundsätzlich. Es wird empfohlen, das Bash-Format zu verwenden (in einfache Anführungszeichen eingeschlossen). Mehrzeilige Befehle (mit Backslash \ zur Fortsetzung) unterstützen ebenfalls das Einfügen, das Tool entfernt automatisch Zeilenumbrüche und Fortsetzungszeichen. Wenn Ihr curl-Befehl besonders komplex ist (enthält Shell-Variablen, Befehlssubstitution $(...), Pipes |, etc.), wird empfohlen, zuerst den echo-Befehl im Terminal auszuführen, um den erweiterten tatsächlichen curl auszugeben und dann zu kopieren, oder zuerst manuell zu vereinfachen (Variablen durch tatsächliche Werte ersetzen).

Warum erhält der Server beim Senden von JSON mit -d in curl unleserliche Daten/400?

Dies ist einer der häufigsten curl-Fehler. Die Option -d/--data von curl hat standardmäßig Content-Type application/x-www-form-urlencoded (Formularformat), nicht application/json. Wenn Sie direkt curl -d '{"name":"demo"}' url ausführen, wird der Server es als Formular parsen (Parse-Fehler oder leere Daten). Sie müssen explizit den Header -H "Content-Type: application/json" hinzufügen, um korrekt JSON zu senden. Dieses Tool zeigt eine orangefarbene Warnung an, wenn es Body aber ohne Content-Type erkennt.

Kann der generierte Code direkt kopiert und ausgeführt werden? Welche Abhängigkeiten muss ich installieren?

Der Code der meisten Sprachen kann direkt mit Standardbibliotheken ausgeführt werden (fetch/Go net/http/PHP cURL/C# HttpClient/PowerShell/wget sind integriert), erfordert keine zusätzliche Installation. Andere erfordern Drittanbieterbibliotheken: Axios (erfordert npm install axios), node-fetch (erfordert npm install node-fetch, Node 18+ hat fetch integriert, keine Installation erforderlich), Python requests (pip install requests), Python httpx (pip install httpx), Java OkHttp (erfordert Import der okhttp3-Abhängigkeit mit Maven/Gradle). Der Code gibt standardmäßig Statuscode und Antworttext aus, Sie können die Verarbeitungslogik nach Bedarf anpassen.

Wird multipart/form-Data Datei-Upload (Parameter -F) unterstützt?

Grundlegende Unterstützung: Der Parameter -F wird als Anfrage-Body erkannt, aber der generierte Code behandelt @file derzeit als literalen String statt tatsächlichen Datei-Upload. Datei-Upload erfordert das Lesen lokaler Dateiinhalte, die Verarbeitungsmethoden variieren stark zwischen Sprachen (JS verwendet FormData/FormData.append, Python verwendet files=-Parameter, Go verwendet multipart.Writer). Es wird empfohlen, auf Basis des von dem Tool generierten Codes die Datei-Upload-Dokumentation der entsprechenden Bibliothek zu konsultieren, um Anpassungen vorzunehmen. Zukünftige Versionen werden die multipart-Unterstützung verbessern.

Werden meine curl-Befehle und sensiblen Daten hochgeladen?

Absolut nicht. Der gesamte Analyse- und Code-Generierungsprozess wird 100% lokal in Ihrem Browser abgeschlossen (reines Frontend-JavaScript), curl-Befehle, Tokens/Cookies/Passwörter in Headern, Daten im Anfrage-Body werden an keine Server gesendet. Sie können dieses Tool ohne Netzwerkverbindung verwenden, keine Sorge um das Durchsickern sensibler Informationen.

Wie wird -k/--insecure zum Überspringen der Zertifikatsprüfung im Code jeder Sprache behandelt?

Bei Erkennung des -k-Parameters generiert dieses Tool für jede Zielsprache die entsprechende Konfiguration zum Überspringen der Zertifikatsprüfung: Python requests/httpx verwendet verify=False; Node.js setzt process.env.NODE_TLS_REJECT_UNAUTHORIZED='0'; Go erstellt benutzerdefiniertes tls.Config{InsecureSkipVerify: true}; PHP setzt CURLOPT_SSL_VERIFYPEER=false und CURLOPT_SSL_VERIFYHOST=0; Java OkHttp erfordert benutzerdefinierten TrustManager (im Code wird ein Warnkommentar hinzugefügt, da der Code lang ist); C# kann ServerCertificateCustomValidationCallback anpassen; PowerShell verwendet -SkipCertificateCheck (PS6+); wget verwendet --no-check-certificate; fetch im Browser kann Zertifikate nicht überspringen (Browser-Sicherheitseinschränkung, im Code wird ein erläuternder Kommentar hinzugefügt). Hinweis: Diese Konfigurationen dienen nur lokalen Entwicklungstests, deaktivieren Sie niemals die Zertifikatsprüfung in Produktion.

Warum folgt der generierte Go-Code keinen Umleitungen? Mit -L sollte er ihnen folgen?

Das Standardverhalten von net/http von Go ist, Umleitungen nicht zu folgen (stimmt mit dem Standardverhalten von curl überein, curl muss explizit -L hinzufügen, um zu folgen). Das Tool generiert bei Erkennung des -L-Parameters einen leeren Client (http.Client{} mit CheckRedirect nil standardmäßig, d.h. folgt 10 Umleitungen); ohne -L generiert es einen Client, bei dem CheckRedirect http.ErrUseLastResponse zurückgibt, folgt keinen Umleitungen (stimmt mit dem Verhalten von curl ohne -L überein). Wenn Sie möchten, dass Go immer Umleitungen folgt, können Sie direkt http.DefaultClient im Code verwenden oder Client{Timeout: ...} anpassen.

Wie behandle ich Anfragen, die eine Anmeldung/mit Cookies erfordern?

Es gibt zwei Möglichkeiten:①Kopieren Sie curl direkt aus dem Browser-DevTools mit angemeldeter Sitzung (empfohlen): Rechtsklick auf Anfrage→Copy as cURL, so sind Cookies/Header automatisch enthalten, einfügen und konvertieren zur direkten Ausführung;②Geben Sie in curl manuell den Cookie-Wert mit -b/--cookie an (-b 'sessionid=abc; token=xyz'), geben Sie Basic Auth mit -u/--user an, geben Sie Bearer Token mit -H "Authorization: Bearer xxx" an, das Tool konvertiert diese Header unverändert. Hinweis: Aus dem Browser kopierte Cookies haben eine Gültigkeitsdauer, können nach einigen Stunden ablaufen und müssen neu kopiert werden.

Warum verwendet der JSON-Body in Python requests den json=-Parameter statt data=?

Der data-Parameter der Python requests-Bibliothek kodiert dict als application/x-www-form-urlencoded, sendet String unverändert, während der json=-Parameter dict/Liste automatisch als JSON-String serialisiert und automatisch den Header Content-Type: application/json setzt (wenn Sie ihn nicht manuell gesetzt haben). Dieses Tool analysiert bei Erkennung, dass Content-Type application/json enthält und der Body gültiges JSON ist, das JSON automatisch als Python-dict und verwendet den json=-Parameter, so ist der Code prägnanter, Sie benötigen kein manuelles json.dumps und vergessen den Content-Type-Header nicht. Nicht-JSON-Bodys (Formular/XML/reiner Text) verwenden den data=-Parameter zum Senden des ursprünglichen Strings.

Der curl-Befehl ist sehr lang mit vielen Headern, was mache ich, wenn der generierte Code alle Header enthält?

Der aus DevTools kopierte curl-Befehl enthält viele automatisch vom Browser hinzugefügte Header (Host, Connection, Accept, Accept-Encoding, Accept-Language, Sec-Fetch-*, sec-ch-ua, Upgrade-Insecure-Requests, etc.), die meisten dieser Header müssen im Code nicht explizit gesetzt werden (HTTP-Clients fügen automatisch vernünftige Standardwerte hinzu, wie Accept-Encoding, Connection, Host, Content-Length, etc.). Es wird empfohlen, nach dem Kopieren des generierten Codes manuell unnötige Header zu entfernen, mindestens behalten: Content-Type, Authorization, Cookie (falls erforderlich), benutzerdefinierte Geschäfts-Header. Überflüssige Header machen den Code nicht nur unschön, sondern können auch zu anormalem Verhalten führen (z.B. explizites Setzen von Accept-Encoding, aber der Client dekomprimiert nicht automatisch).

Wird der HTTPS-Proxy-Parameter (-x/--proxy) unterstützt?

Derzeit wird der HTTP-Proxy-Parameter (-x/--proxy) noch nicht automatisch konvertiert. Die Proxy-Konfiguration variiert stark zwischen Sprachen (JS fetch hat keine native Proxy-Unterstützung, erfordert Agent, Python verwendet proxies=-Parameter, Go über Transport.Proxy, PHP verwendet CURLOPT_PROXY, C# verwendet WebProxy, Java verwendet OkHttpClient.Builder().proxy()). Proxy-Header (Authentifizierung des Proxys selbst) erfordern ebenfalls separate Verarbeitung. In der aktuellen Version werden Proxy-bezogene Parameter ignoriert, Sie können die Proxy-Konfiguration manuell auf Basis des generierten Codes hinzufügen, zukünftige Versionen werden die Proxy-Unterstützung verbessern.

Welche Unterschiede gibt es zu Online-Tools wie curlconverter.com?

Im Vergleich zu bekannten Tools wie curlconverter.com die Vorteile von curl-to-code von GeekFormat:①Vollständige lokale Verarbeitung (die Verarbeitungslogik von curlconverter ist auf dem Server oder Client), lädt keine Daten hoch, sicherer;②Chinesische Oberfläche und chinesische Erklärungen, freundlich für chinesische Entwickler;③Generierter Code ist besser an den tatsächlichen Produktionseinsatz angepasst (z.B. Python requests verwendet json=-Parameter für JSON-Body statt data=, Standardverhalten von Go an curl angepasst, C# verarbeitet Content-Type korrekt ohne fest application/json zu kodieren);④Umfassende Dokumentation, FAQ, Vergleichstabellen, Fehlerbehebung, generiert nicht nur Code, sondern hilft Ihnen zu verstehen, warum er so geschrieben ist;⑤Kostenlos ohne Werbung, keine Registrierung oder Anmeldung erforderlich, benötigt keine Netzwerkanfragen zur Nutzung.

术语表

cURL / curl
Quelloffenes Kommandozeilentool und libcurl-Bibliothek, zum Senden von Anfragen für Protokolle wie HTTP/HTTPS/FTP über die Kommandozeile per URL, ist das am häufigsten verwendete Tool von Entwicklern zum Debuggen von APIs.
HTTP-Methode
HTTP-Anfrageaktion, gängige sind GET (Lesen), POST (Erstellen), PUT (vollständige Aktualisierung), PATCH (teilweise Aktualisierung), DELETE (Löschen), HEAD (Header abrufen), OPTIONS (Serverfähigkeiten abfragen).
Header
Metadaten-Schlüssel-Wert-Paare in der HTTP-Anfrage, wie Content-Type, Authorization, User-Agent, Cookie, Accept, etc., spezifiziert in curl über -H/--header.
Body
Datenteil der HTTP-Anfrage, häufig bei POST/PUT/PATCH, spezifiziert in curl über -d/--data/--data-binary/-F, gängige Formate sind JSON, form-urlencoded, multipart/form-data.
Content-Type
Anfrage-/Antwort-Header, der den Medientyp des Bodys angibt. application/json bedeutet JSON, application/x-www-form-urlencoded bedeutet URL-kodiertes Formular, multipart/form-data bedeutet Datei-Upload-Formular.
Basic Auth
HTTP-Basisauthentifizierung, überträgt Benutzername und Passwort über den Header Authorization: Basic base64(user:pass), spezifiziert in curl mit -u user:pass.
Bearer Token
Token-basierte Authentifizierungsmethode, übertragen über den Header Authorization: Bearer <token>, häufig bei JWT/OAuth2.
User-Agent
Anfrage-Header, der den Client-Typ identifiziert (Browser/Crawler/Skript), curl sendet standardmäßig "curl/Versionsnummer", viele Websites blockieren Nicht-Browser-UAs, häufig mit -A spezifiziert.
Cookie
Schlüssel-Wert-Paare, die vom Server über Set-Cookie gesendet und vom Browser in nachfolgenden Anfragen über den Cookie-Header zurückgesandt werden, zur Sitzungsaufrechterhaltung. curl -b sendet Cookie, -c speichert Cookie.
Referer
Anfrage-Header, der die URL der Herkunftsseite der aktuellen Anfrage angibt, einige Anti-Hotlink/CSRF-Prüfungen überprüfen ihn. In curl mit -e gesetzt.
Umleitung (3xx)
Wenn der Server Statuscodes 301/302/303/307/308 zurückgibt, weist er den Browser an, zu einer neuen URL zu springen. curl folgt standardmäßig nicht, fügen Sie -L/--location hinzu, um zu folgen.
--compressed
curl-Option, fügt automatisch den Header Accept-Encoding: deflate, gzip hinzu und dekomprimiert die Antwort automatisch. Ohne diese Einstellung kann die Antwort komprimierte unlesbare Daten sein.
-k/--insecure
curl-Option, überspringt die HTTPS-Zertifikatsprüfung, nur für Testumgebungen mit selbstsignierten Zertifikaten, in Produktion verboten.
fetch API
Native JavaScript-HTTP-Anfrage-API des Browsers, gibt Promise zurück, von modernen Browsern unterstützt.
Axios
Beliebte Promise-basierte HTTP-Client-Bibliothek, kompatibel mit Browser und Node.js, automatische JSON-Serialisierung, Interceptoren, Timeout-Abbruch.
OkHttp
Java/Android HTTP-Client-Bibliothek von Square, hohe Leistung, HTTP/2-Unterstützung, Connection-Pool, transparentes GZIP.
HttpClient (.NET)
Empfohlener HTTP-Client für C#/.NET, System.Net.Http-Namespace, Standard-API von .NET Core/.NET 5+.
Invoke-RestMethod
In PowerShell 3.0+ integriertes HTTP-Anfrage-Cmdlet, analysiert JSON/XML-Antworten automatisch als PowerShell-Objekte.

Vergleichstabelle gängiger cURL-Optionen mit 11 Zielsprachen

Gängige Content-Type-Werte und Verwendung mit curl

Vergleich von drei Copy as cURL-Formaten in Chrome DevTools

Troubleshooting