Konwertuj curl na Ansible

curl2code konwertuje polecenia curl na zadania playbooka Ansible przy użyciu modułu uri. Konwersja odbywa się w przeglądarce poprzez WebAssembly, zapewniając pełną prywatność. W przypadku Python, sprawdź nasz konwerter curl na Python. W przypadku PowerShell, zobacz curl na PowerShell. Poniżej znajdują się praktyczne przykłady w Ansible.

Jak skopiować polecenie curl z przeglądarki

  1. 1

    Otwórz DevTools

    Naciśnij F12 lub Ctrl+Shift+I, aby otworzyć narzędzia programistyczne przeglądarki.

  2. 2

    Przejdź do karty Sieć

    Kliknij kartę Sieć i wykonaj akcję, która wywołuje żądanie HTTP.

  3. 3

    Kopiuj jako cURL

    Kliknij żądanie prawym przyciskiem myszy → KopiujKopiuj jako cURL. Następnie wklej je powyżej.

Najczęściej zadawane pytania

Czym jest moduł Ansible uri?

Moduł uri to wbudowany moduł Ansible do wykonywania żądań HTTP wewnątrz playbooków. Obsługuje GET, POST, PUT, DELETE wraz ze wsparciem dla treści JSON, uwierzytelniania i walidacji kodów statusu. Nie wymaga dodatkowych kolekcji — jest częścią ansible.builtin. curl2code generuje zadania Ansible w YAML przy użyciu modułu uri.

Moduł uri vs get_url vs command z curl — którego użyć?

Moduł uri służy do wywołań API — zwraca sparsowany JSON i waliduje status. get_url służy do pobierania plików na dysk. command: curl to antywzorzec — traci się idempotentność i obsługę błędów. Zawsze preferuj uri do interakcji z API HTTP. Dla automatyzacji w Pythonie zobacz curl do Python.

Jak obsługiwać uwierzytelnianie w Ansible?

Dla Bearer: headers: { Authorization: "Bearer {{ token }}" }. Dla Basic auth: użyj parametrów url_username i url_password. Przechowuj tajne dane w Ansible Vault: ansible-vault encrypt_string. Moduł uri obsługuje również force_basic_auth: yes dla uwierzytelniania prewencyjnego.

Jak wysyłać dane formularza w Ansible?

Dla treści JSON: body: {{ data | to_json }} z body_format: json. Dla form-urlencoded: body_format: form-urlencoded z body: key=value&key2=value2. Przesyłanie plików multipart wymaga modułu community.general.uri lub niestandardowego skryptu. curl2code obsługuje konwersje -F.

Jak obsługiwać błędy w zadaniach HTTP Ansible?

Użyj register: result z failed_when: result.status != 200 dla niestandardowych warunków niepowodzenia. Użyj ignore_errors: yes, aby kontynuować mimo błędu. Moduł uri domyślnie kończy się niepowodzeniem przy statusie innym niż 2xx — nadpisz to za pomocą status_code: [200, 201, 404], aby akceptować wiele kodów statusu.

Jak parsować odpowiedzi JSON w Ansible?

Moduł uri automatycznie parsuje JSON, gdy ustawione jest return_content: yes — dostęp przez result.json. Użyj filtrów Jinja2: result.json.users | selectattr('active') | list. Dla złożonych transformacji użyj set_fact z filtrami. Rejestruj wyniki do użycia w kolejnych zadaniach.

Jak ustawić limity czasu i ponowienia w Ansible?

Ustaw timeout: 30 w zadaniu uri dla limitu czasu żądania w sekundach. Dla ponowień: użyj retries: 3 z delay: 5 i until: result.status == 200. Jest to wbudowany w Ansible wzorzec pętli ponowień — nie wymaga niestandardowych skryptów. Działa z każdym modułem, nie tylko uri.

Jak używać proxy z Ansible uri?

Ustaw środowisko w zadaniu: environment: { http_proxy: "http://proxy:8080", https_proxy: "http://proxy:8080" }. Lub ustaw globalnie w ansible.cfg lub group_vars. Moduł uri respektuje standardowe zmienne środowiskowe proxy. Dla wyjątków no-proxy: no_proxy: "localhost,.internal".

Jak wysłać żądanie POST z ciałem JSON w Ansible?

Konwertuj polecenie curl POST, takie jak curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL na kod Ansible za pomocą curl2code. Wygenerowany kod używa ansible.builtin.uri: url: '{'{ url }'}' method: POST body_format: json body: '{'{ data }'}'. curl2code automatycznie wykrywa flagi -d/--data z zawartością JSON i ustawia odpowiedni nagłówek Content-Type w kodzie modułu uri.

Jak dodać autoryzację Bearer token w Ansible?

Przekaż curl -H "Authorization: Bearer YOUR_TOKEN" URL do curl2code, a narzędzie wygeneruje kod modułu uri z nagłówkiem autoryzacji: headers: Authorization: 'Bearer YOUR_TOKEN'. curl2code wykrywa tokeny Bearer zarówno z flag -H "Authorization: Bearer ...", jak i --oauth2-bearer. W przypadku Basic auth użyj -u user:pass.

Jak ustawić nagłówek Content-Type w Ansible?

curl2code konwertuje curl -H "Content-Type: application/json" URL na kod modułu uri z właściwym nagłówkiem: body_format: json. Dla danych -d curl domyślnie ustawia application/x-www-form-urlencoded; dla przesyłania formularzy -F używa multipart/form-data. curl2code mapuje każde z nich na odpowiednie API modułu uri.

Przydatne linki

Poradniki curl

Konwertuj curl na inne języki