curl in Ansible konvertieren

curl2code konvertiert curl-Befehle in Ansible-Playbook-Tasks unter Verwendung des uri-Moduls. Die Konvertierung läuft in Ihrem Browser via WebAssembly für vollständige Privatsphäre. Für Python schauen Sie sich unseren curl zu Python Konverter an. Für PowerShell siehe curl zu PowerShell. Unten finden Sie praktische Ansible-Beispiele.

So kopieren Sie curl aus Ihrem Browser

  1. 1

    DevTools öffnen

    Drücken Sie F12 oder Ctrl+Shift+I, um die Entwicklertools Ihres Browsers zu öffnen.

  2. 2

    Zum Reiter Netzwerk gehen

    Klicken Sie auf den Reiter Netzwerk und führen Sie die Aktion aus, die den HTTP-Request auslöst.

  3. 3

    Als cURL kopieren

    Rechtsklick auf den Request → KopierenAls cURL kopieren. Dann oben einfügen.

Häufig gestellte Fragen (FAQ)

Was ist das Ansible uri-Modul?

Das uri-Modul ist das integrierte Modul von Ansible zum Ausführen von HTTP-Anfragen innerhalb von Playbooks. Es unterstützt GET, POST, PUT, DELETE mit JSON-Body-Unterstützung, Authentifizierung und Statuscode-Validierung. Keine zusätzliche Collection erforderlich — es ist Teil von ansible.builtin. curl2code generiert Ansible-Task-YAML unter Verwendung des uri-Moduls.

uri-Modul vs. get_url vs. command mit curl — was sollte man verwenden?

Das uri-Modul ist für API-Aufrufe gedacht — es gibt geparstes JSON zurück und validiert den Status. get_url dient zum Herunterladen von Dateien auf die Festplatte. command: curl ist ein Anti-Pattern — dabei gehen Idempotenz und Fehlerbehandlung verloren. Bevorzugen Sie immer uri für HTTP-API-Interaktionen. Für Python-Automatisierung siehe curl zu Python.

Wie wird die Authentifizierung in Ansible gehandhabt?

Für Bearer: headers: { Authorization: "Bearer {{ token }}" }. Für Basic-Auth verwenden Sie die Parameter url_username und url_password. Speichern Sie Geheimnisse in Ansible Vault: ansible-vault encrypt_string. Das uri-Modul unterstützt auch force_basic_auth: yes für präemptive Authentifizierung.

Wie sendet man Formulardaten mit Ansible?

Für JSON-Bodys: body: {{ data | to_json }} mit body_format: json. Für form-urlencoded: body_format: form-urlencoded mit body: key=value&key2=value2. Multipart-Dateiuploads erfordern das Modul community.general.uri oder ein benutzerdefiniertes Skript. curl2code verarbeitet -F-Konvertierungen.

Wie geht man mit Fehlern in Ansible-HTTP-Tasks um?

Verwenden Sie register: result mit failed_when: result.status != 200 für benutzerdefinierte Fehlerbedingungen. Nutzen Sie ignore_errors: yes, um bei Fehlern fortzufahren. Das uri-Modul schlägt standardmäßig bei Nicht-2xx-Codes fehl — überschreiben Sie dies mit status_code: [200, 201, 404], um mehrere Statuscodes zu akzeptieren.

Wie parst man JSON-Antworten in Ansible?

Das uri-Modul parst JSON automatisch, wenn return_content: yes gesetzt ist — der Zugriff erfolgt über result.json. Verwenden Sie Jinja2-Filter: result.json.users | selectattr('active') | list. Für komplexe Transformationen nutzen Sie set_fact mit Filtern. Registrieren Sie Ergebnisse zur Verwendung in nachfolgenden Tasks.

Wie setzt man Timeouts und Retries in Ansible?

Setzen Sie timeout: 30 im uri-Task für den Anfrage-Timeout in Sekunden. Für Retries: Verwenden Sie retries: 3 mit delay: 5 und until: result.status == 200. Dies ist das integrierte Retry-Schleifenmuster von Ansible — kein benutzerdefiniertes Skripting erforderlich. Funktioniert mit jedem Modul, nicht nur mit uri.

Wie verwendet man einen Proxy mit Ansible uri?

Setzen Sie das Environment im Task: environment: { http_proxy: "http://proxy:8080", https_proxy: "http://proxy:8080" }. Oder setzen Sie es global in ansible.cfg oder group_vars. Das uri-Modul berücksichtigt Standard-Proxy-Umgebungsvariablen. Für No-Proxy-Ausnahmen: no_proxy: "localhost,.internal".

Wie sendet man eine POST-Anfrage mit JSON-Body in Ansible?

Konvertieren Sie einen curl POST Befehl wie curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL mit curl2code nach Ansible. Der generierte Code verwendet ansible.builtin.uri: url: '{'{ url }'}' method: POST body_format: json body: '{'{ data }'}'. curl2code erkennt automatisch -d/--data Flags mit JSON Inhalt und setzt den entsprechenden Content-Type Header im uri Modul Code.

Wie fügt man eine Bearer Token Autorisierung in Ansible hinzu?

Übergeben Sie curl -H "Authorization: Bearer YOUR_TOKEN" URL an curl2code und es generiert uri Modul Code mit dem Auth Header: headers: Authorization: 'Bearer YOUR_TOKEN'. curl2code erkennt Bearer Tokens sowohl in -H "Authorization: Bearer ..." als auch in --oauth2-bearer Flags. Für Basic auth verwenden Sie -u user:pass.

Wie setzt man den Content-Type Header in Ansible?

curl2code konvertiert curl -H "Content-Type: application/json" URL in uri Modul Code mit dem richtigen Header: body_format: json. Bei -d Daten verwendet curl standardmäßig application/x-www-form-urlencoded; bei -F Formular-Uploads wird multipart/form-data verwendet. curl2code ordnet beides der korrekten uri Modul API zu.

Nützliche Links

curl-Anleitungen

curl in andere Sprachen konvertieren