win_uri - Взаимодействие с веб-сервисами
Добавлен в версии 2.1.
Обзор
- Взаимодействует с веб-сервисами FTP, HTTP и HTTPS.
- Поддерживает механизмы аутентификации HTTP Digest, Basic и WSSE.
- Для платформ, не являющихся Windows, используйте модуль uri.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| body | Тело HTTP запроса/ответа веб-сервису. | |
| client_cert (добавлено в 2.4) | Указывает сертификат клиента (.pfx), используемый для защищенного веб-запроса. Подключение WinRM должно быть аутентифицировано с CredSSP , если файл сертификата не защищен паролем.Другие типы аутентификации могут установить client_cert_password, если сертификат защищен паролем. | |
| client_cert_password (добавлено в 2.5) | Пароль для файла сертификата клиента (.pfx), используемого для защищенного веб-запроса. | |
| content_type | Устанавливает заголовок "Content-Type". | |
| creates (добавлено в 2.4) | Имя файла. Если файл уже существует, этот шаг будет пропущен. | |
| dest (добавлено в 2.3) | Выводит тело ответа в файл. | |
| follow_redirects (добавлено в 2.4) |
| Следует ли модулю win_uri перенаправлять запросы.all будет перенаправлять все запросы.none не будет перенаправлять запросы.safe будет перенаправлять только «безопасные» перенаправления, где «безопасное» означает, что клиент выполняет только GET или HEAD для перенаправляемого URI. |
| force_basic_auth bool (добавлено в 2.5) |
| По умолчанию информация об аутентификации отправляется только при получении от веб-сервиса ответа со статусом 401. Некоторые службы базовой аутентификации не отправляют код 401, из-за чего вход может не удаться. Этот параметр принудительно отправляет заголовок Basic аутентификации с начальным запросом. |
| headers | Дополнительные заголовки для запроса. Подробнее см. примеры. | |
| maximum_redirection (добавлено в 2.4) | Значение по умолчанию: 5 | Указывает, сколько раз win_uri перенаправит соединение на альтернативный URI, прежде чем соединение будет прервано.Если maximum_redirection установлено в 0 (ноль) или follow_redirects установлено в none, или установлено в safe при отсутствии GET или HEAD, это предотвращает все перенаправления. |
| method |
| HTTP-метод запроса или ответа. |
| password (добавлено в 2.4) | Пароль для аутентификации. | |
| removes (добавлено в 2.4) | Имя файла. Если файл не существует, этот шаг будет пропущен. | |
| return_content bool (добавлено в 2.4) |
| Возвращать ли тело ответа как ключ "content" в словаре результатов. Если отчётный тип содержимого "application/json", то JSON также загружается в ключ, называемый json в словаре результатов. |
| status_code (добавлено в 2.4) | Значение по умолчанию: 200 | Действительный числовой HTTP-код состояния, указывающий на успешность запроса. Также может быть запятой разделенным списком кодов состояния. |
| timeout (добавлено в 2.4) | Значение по умолчанию: 30 | Указывает, сколько времени запрос может ожидать, прежде чем истечёт время ожидания (в секундах). Значение 0 (ноль) указывает неограниченное время ожидания. Запрос DNS может занять до 15 секунд, прежде чем вернётся ответ или истечёт время ожидания. Если ваш запрос содержит имя хоста, требующее разрешения, и вы устанавливаете timeout на значение больше нуля, но меньше 15 секунд, может потребоваться 15 секунд или более, прежде чем истечёт время ожидания запроса. |
| url обязательно | Поддерживает FTP, HTTP или HTTPS URL в формате (ftp|http|https)://host.domain:port/path. | |
| use_basic_parsing bool |
| Начиная с Ansible 2.5, этот параметр больше недействителен и не может быть изменён с yes, этот параметр будет удалён в Ansible 2.7.Перед Ansible 2.5, этот модуль опирался на «Invoke-WebRequest», который по умолчанию использует движок Internet Explorer для разбора веб-страницы. Существует крайний случай, когда если пользователь не запускал IE ранее, это может привести к ошибке. Единственное преимущество использования парсера Internet Explorer заключается в том, что вы можете проходить по DOM в скрипте PowerShell. Это не полезно для Ansible, поэтому по умолчанию мы отключаем 'UseBasicParsing'. Однако вы можете отключить это здесь. |
| user (добавлено в 2.4) | Имя пользователя для аутентификации. | |
| validate_certs bool (добавлено в 2.4) |
| Если no, SSL-сертификаты не будут проверяться. Это следует устанавливать только на сайтах, контролируемых пользователем, использующих самозаверяющие сертификаты. |
Примечания
Примечание
- Для платформ, не являющихся Windows, используйте модуль uri.
Примеры
- name: Perform a GET and Store Output
win_uri:
url: http://example.com/endpoint
register: http_output
# Set a HOST header to hit an internal webserver:
- name: Hit a Specific Host on the Server
win_uri:
url: http://example.com/
method: GET
headers:
host: www.somesite.com
- name: Perform a HEAD on an Endpoint
win_uri:
url: http://www.example.com/
method: HEAD
- name: POST a Body to an Endpoint
win_uri:
url: http://www.somesite.com/
method: POST
body: "{ 'some': 'json' }"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| content строка | успех и return_content равно True | Необработанное содержимое HTTP-ответа. Пример: {"foo": "bar"} |
| content_length целое число | успех | Размер ответа в байтах. Пример: 54447 |
| json словарь | успех и Content-Type равен "application/json" или "application/javascript" и return_content равно True | Структура JSON, возвращенная в виде словаря в поле content. Пример: {'this-is-dependent': 'on the actual return content'} |
| status_code целое число | успех | HTTP код состояния ответа. Пример: 200 |
| status_description строка | успех | Краткое описание состояния. Пример: OK |
| url строка | всегда | Целевой URL. Пример: https://www.ansible.com |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантирует обратную совместимость.
Обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. Дополнительную информацию см. в Поддержка и обслуживание модулей.
Список других модулей, также поддерживаемых сообществом Ansible, см. здесь.
Автор
- Corwin Brown (@blakfeld)
- Dag Wieers (@dagwieers)
Подсказка
Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/win_uri_module.html