win_uri – Взаимодействие с веб-службами
Обзор
- Взаимодействует с FTP, HTTP и HTTPS веб-службами.
- Поддерживает механизмы аутентификации HTTP Digest, Basic и WSSE.
- Для платформ, отличных от Windows, используйте модуль uri.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| body raw | Тело HTTP запроса/ответа веб-сервису. | |
| client_cert string добавлено в 2.4 | Путь к клиенту сертификат (.pfx), используемый для аутентификации X509. Этот путь может быть путём к pfx в файловой системе или путём к сертификату PowerShell Cert:\CurrentUser\My\<thumbprint>. Подключение WinRM должно быть аутентифицировано с CredSSP или become используется в задаче, если файл сертификата не защищён паролем.Другие типы аутентификации могут устанавливать client_cert_password, если сертификат защищён паролем. | |
| client_cert_password string добавлено в 2.5 | Пароль для client_cert, если сертификат защищён паролем. | |
| content_type string | Устанавливает заголовок "Content-Type". | |
| creates path добавлено в 2.4 | Имя файла. Если файл уже существует, этот шаг будет пропущен. | |
| dest path | Вывести тело ответа в файл. | |
| follow_redirects string добавлено в 2.4 |
| Следовать ли перенаправлениям. all будет следовать всем перенаправлениям.none не будет следовать ни одному перенаправлению.safe будет следовать только "безопасным" перенаправлениям, где "безопасный" означает, что клиент выполняет только GET или HEAD для URI, на который он перенаправляется. |
| force_basic_auth boolean добавлено в 2.5 |
| По умолчанию заголовок аутентификации отправляется только тогда, когда веб-сервис отвечает на первоначальный запрос с кодом состояния 401. Поскольку некоторые сервисы базовой аутентификации не отправляют 401 должным образом, логины могут не пройти. Этот параметр принудительно отправляет заголовок базовой аутентификации при первоначальном запросе. |
| headers dictionary | Дополнительные заголовки для запроса. Это должен быть словарь, где ключ - имя заголовка, а значение - значение заголовка. | |
| http_agent string добавлено в 2.9 | Значение по умолчанию: "ansible-httpget" | Заголовок для идентификации, обычно отображается в журналах веб-сервера. Это устанавливается в заголовок User-Agent HTTP-запроса. |
| maximum_redirection integer добавлено в 2.4 | Значение по умолчанию: 50 | Указывает количество перенаправлений, которые модуль выполнит, прежде чем соединение завершится ошибкой. Если установлено значение 0 или follow_redirects установлено в значение none, или safe, когда не выполняется GET или HEAD, это предотвращает все перенаправления. |
| method string | Значение по умолчанию: "GET" | HTTP метод запроса или ответа. |
| proxy_password string добавлено в 2.9 | Пароль для proxy_username. | |
| proxy_url string добавлено в 2.9 | Явный прокси-сервер для использования в запросе. По умолчанию запрос будет использовать прокси, определенный в IE, если параметр use_proxy не установлен в значение no. | |
| proxy_use_default_credential boolean добавлено в 2.9 |
| Использует учетные данные текущего пользователя при аутентификации на прокси-хосте, защищенном NTLM, Kerberos, или Negotiate аутентификацией.Для прокси, использующих аутентификацию Basic, всё ещё требуются явные учетные данные через параметры proxy_username и proxy_password.Модуль получит доступ к учетным данным пользователя только при использовании become с паролем, подключении через SSH с паролем или подключении через WinRM с использованием CredSSP или Kerberos with delegation. Если не используется become или другой метод аутентификации, отличные от указанных выше, то доступные по умолчанию учетные данные отсутствуют и аутентификация прокси не произойдёт. |
| proxy_username string добавлено в 2.9 | Имя пользователя для аутентификации на прокси-сервере. | |
| removes path добавлено в 2.4 | Имя файла. Если файл не существует, этот шаг будет пропущен. | |
| return_content boolean добавлено в 2.4 |
| Возвращать ли тело ответа в качестве ключа "content" в результатах словаря. Если отчётный тип Content-type - "application/json", то JSON дополнительно загружается в ключ, названный json в результатах словаря. |
| status_code list добавлено в 2.4 | Значение по умолчанию: [200] | Действительный числовой код HTTP состояния, указывающий на успешность запроса. Также может быть запятой разделённым списком кодов состояния. |
| timeout integer добавлено в 2.4 | Значение по умолчанию: 30 | Указывает, сколько времени запрос может ожидать перед истечением времени ожидания (в секундах). Установите значение 0 для указания бесконечного времени ожидания. |
| url string / обязательно | Поддерживает URL FTP, HTTP или HTTPS в формате (ftp|http|https)://host.domain:port/path. | |
| url_password string добавлено в 2.4 | Пароль для url_username. Изначально назывался password, но был переименован в url_password в Ansible 2.9. псевдонимы: password | |
| url_username string добавлено в 2.4 | Имя пользователя для аутентификации. Изначально назывался user, но был переименован в url_username в Ansible 2.9. псевдонимы: user, username | |
| use_default_credential boolean добавлено в 2.9 |
| Использует учетные данные текущего пользователя при аутентификации на сервере, защищенном NTLM, Kerberos, или Negotiate аутентификацией.Для сайтов, использующих Basic аутентификацию, все ещё требуются явные учетные данные через параметры url_username и url_password.Модуль получит доступ к учетным данным пользователя только при использовании become с паролем, подключении через SSH с паролем или подключении через WinRM с использованием CredSSP или Kerberos with delegation аутентификации.Если не используется become или другой метод аутентификации, отличные от указанных выше, доступные по умолчанию учетные данные отсутствуют и аутентификация не произойдёт. |
| use_proxy boolean added in 2.9 |
| Если no, прокси, определенный в IE для текущего пользователя, не будет использоваться. |
| validate_certs boolean added in 2.4 |
| Если no, сертификаты SSL не будут проверены.Это следует использовать только на сайтах, которыми вы управляете лично, использующих самозаверенные сертификаты. |
См. также
См. также
- uri – Взаимодействие с веб-сервисами
- Официальная документация по модулю uri.
- win_get_url – Загрузка файла из HTTP, HTTPS или FTP в узел
- Официальная документация по модулю win_get_url.
- win_inet_proxy – Управление настройками прокси для WinINet и Internet Explorer
- Официальная документация по модулю win_inet_proxy.
Примеры
- 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 |
| elapsed вещественное число | всегда | Количество секунд, затраченное на загрузку. Пример: 23.2 |
| 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. [сообщество]
Авторы
- 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.9/modules/win_uri_module.html