Konverter curl til Ansible

curl2code konverterer curl-kommandoer til Ansible playbook-opgaver ved hjælp af uri-modulet. Konverteringen kører i din browser via WebAssembly for fuldstændig privatliv. For Python, tjek vores curl til Python-konverter. For PowerShell, se curl til PowerShell. Nedenfor er praktiske Ansible-eksempler.

Sådan kopierer du curl fra din browser

  1. 1

    Åbn DevTools

    Tryk på F12 eller Ctrl+Shift+I for at åbne din browsers udviklerværktøjer.

  2. 2

    Gå til fanen Network

    Klik på fanen Network og udfør den handling, der udløser HTTP-anmodningen.

  3. 3

    Kopier som cURL

    Højreklik på anmodningen → CopyCopy as cURL. Indsæt den derefter ovenfor.

Ofte stillede spørgsmål

Hvad er Ansible uri-modulet?

uri-modulet er Ansibles indbyggede modul til at foretage HTTP-anmodninger i playbooks. Det håndterer GET, POST, PUT, DELETE med understøttelse af JSON-body, autentificering og validering af statuskoder. Ingen yderligere samling er nødvendig — det er en del af ansible.builtin. curl2code genererer Ansible task YAML ved hjælp af uri-modulet.

uri-modul vs get_url vs command med curl — hvilken skal man bruge?

uri-modulet er til API-kald — det returnerer parset JSON og validerer status. get_url er til download af filer til disk. command: curl er et anti-mønster — man mister idempotens og fejlhåndtering. Foretræk altid uri til HTTP API-interaktioner. For Python-automatisering, se curl til Python.

Hvordan håndteres autentificering i Ansible?

For Bearer: headers: { Authorization: "Bearer {{ token }}" }. Til Basic auth: brug parametrene url_username og url_password. Gem hemmeligheder i Ansible Vault: ansible-vault encrypt_string. uri-modulet understøtter også force_basic_auth: yes for præemptiv autentificering.

Hvordan sender man formular-data med Ansible?

For JSON-bodies: body: {{ data | to_json }} med body_format: json. For form-urlencoded: body_format: form-urlencoded med body: key=value&key2=value2. Multipart fil-uploads kræver community.general.uri-modulet eller et brugerdefineret script. curl2code håndterer -F konverteringer.

Hvordan håndteres fejl i Ansible HTTP-tasks?

Brug register: result med failed_when: result.status != 200 for brugerdefinerede fejlforhold. Brug ignore_errors: yes for at fortsætte ved fejl. uri-modulet fejler som standard ved ikke-2xx — overskriv med status_code: [200, 201, 404] for at acceptere flere statuskoder.

Hvordan parser man JSON-svar i Ansible?

uri-modulet parser automatisk JSON, når return_content: yes er indstillet — få adgang via result.json. Brug Jinja2-filtre: result.json.users | selectattr('active') | list. For komplekse transformationer skal du bruge set_fact med filtre. Registrer resultater til brug i efterfølgende opgaver.

Hvordan indstiller man timeouts og genforsøg i Ansible?

Indstil timeout: 30 på uri-opgaven for anmodnings-timeout i sekunder. For genforsøg: brug retries: 3 med delay: 5 og until: result.status == 200. Dette er Ansibles indbyggede genforsøgs-løkkemønster — ingen brugerdefineret scripting er nødvendig. Fungerer med ethvert modul, ikke kun uri.

Hvordan bruger man en proxy med Ansible uri?

Indstil miljøet på opgaven: environment: { http_proxy: "http://proxy:8080", https_proxy: "http://proxy:8080" }. Eller indstil det globalt i ansible.cfg eller group_vars. uri-modulet respekterer standard proxy-miljøvariabler. For no-proxy undtagelser: no_proxy: "localhost,.internal".

Hvordan sender man en POST-anmodning med JSON-body i Ansible?

Konverter en curl POST-kommando som curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL til Ansible ved hjælp af curl2code. Den genererede kode bruger ansible.builtin.uri: url: '{'{ url }'}' method: POST body_format: json body: '{'{ data }'}'. curl2code registrerer automatisk -d/--data-flag med JSON-indhold og indstiller den relevante Content-Type-header i uri-modulets kode.

Hvordan tilføjer man Bearer token-autorisation i Ansible?

Send curl -H "Authorization: Bearer YOUR_TOKEN" URL til curl2code, og den genererer uri-modulets kode med auth-headeren: headers: Authorization: 'Bearer YOUR_TOKEN'. curl2code registrerer Bearer-tokens fra både -H "Authorization: Bearer ..." og --oauth2-bearer-flag. Til Basic auth skal du bruge -u user:pass.

Hvordan indstiller man Content-Type-headeren i Ansible?

curl2code konverterer curl -H "Content-Type: application/json" URL til uri-modulets kode med den korrekte header: body_format: json. For -d-data bruger curl som standard application/x-www-form-urlencoded; for -F-formular-uploads bruges multipart/form-data. curl2code mapper hver af disse til den korrekte uri-modul API.

Nyttige links

curl-guider

Konverter curl til andre sprog