Отправить запрос / Send request
Группа действий: Интеграции
Отправляет HTTP-запрос для обращения к RESTful веб-сервису
Настройки
Свойство | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
Параметры | ||||
URL REST-сервиса | URL REST-сервиса | Robin.String | Да | |
Метод | Определяет тип создаваемого запроса. По умолчанию Get. | Robin.String | Нет | |
Тело запроса | Тело отправляемого запроса. Позволяет отправить запрос в виде JSON строки. | Robin.String | Нет | |
Параметры запроса | Параметры строки запроса | Robin.Dictionary | Нет | |
Параметры формы | Параметры HTML формы для метода POST. | Robin.Dictionary | Нет | |
Авторизация | Словарь с параметрами авторизации - Basic или Bearer Token. В случае Basic авторизации словарь должен иметь ключи «user» и «pass», а значения элементов словаря должны содержать логин и пароль пользователя. В случае Bearer Token авторизации словарь должен иметь ключ «token», а значение элемента должно содержать Bearer Token. | Robin.Dictionary | Нет | |
Заголовки запроса | Набор заголовков отправляемого запроса и их значений. Каждый ключ – отдельный заголовок. | Robin.Dictionary | Нет | |
Путь к файлу для отправки методом POST | Путь к файлу, который нужно прикрепить к запросу. | Robin.FilePath | Нет | |
Выбор прокси-сервера | Выпадающий список из элементов: "Системный прокси-сервер", "Без прокси-сервера", "Пользовательский прокси-сервер". Значение по умолчанию - "Системный прокси-сервер". Описание: "Можно использовать системные настройки прокси, заданные на уровне ОС, либо настроить параметры пользовательского прокси-сервера, либо подключаться без прокси-сервера. | Robin.String | Да | |
Получить файл | Возможность получить файлы из запроса. Если выбрано значение "true", обязательно должны быть заполнены поля "Путь до папки" и "Имя файла" | Robin.Boolean | Нет | |
Путь до папки | Путь к папке, в которой нужно сохранить полученный файл | Robin.FolderPath | Нет | |
Имя файла | Поле для имени файла с расширением, чтобы сразу сохранять его в должном виде. | Robin.String | Нет | |
Перезаписать | Перезаписать существующий файл. В случае, если значение параметра false, а в указанной папке уже существует файл с таким же именем и расширением, то будет вызвана ошибка. Значение по умолчанию - false. | Robin.Boolean | Нет | |
Протокол прокси- сервера | Протокол прокси-сервера. Например: http, https | Robin.String | Нет | |
Имя хоста или IP-адрес прокси-сервера | Имя хоста или IP-адрес прокси-сервера | Robin.String | Нет | |
Порт прокси-сервера | Порт прокси-сервера | Robin.String | Нет | |
Логин пользователя для подключения к прокси- серверу | Логин пользователя для подключения к прокси-серверу | Robin.String | Нет | |
Пароль пользователя для подключения к прокси-серверу | Пароль пользователя для подключения к прокси-серверу | Robin.Object | Нет | |
Результаты | ||||
Статус ответа | Числовая переменная, в которую запишется код статуса ответа веб-сервиса. Возвращается всеми методами. | Robin.String | ||
Заголовки ответа | Набор заголовков, получаемых от сервера, и их значения. Возвращается только методами: HEAD, OPTIONS | Robin.Dictionary | ||
Тело ответа | Строковая переменная, в которую запишется тело ответа веб-сервиса в raw формате. Возвращается всеми методами | Robin.String | ||
Идентификатор | Строковая переменная, в которую запишется идентификатор из заголовка ответа „Id“. Возвращается только методом POST | Robin.String | ||
Location | Заголовок с указателем ресурса объекта. Имеет смысл для статусов 201, 3хх и только для метода POST | Robin.String |
Особые условия использования
Действие вернет ошибку, если:
- "Путь до папки" заполнен некорректно.
- "Получить файл" - true, но на сервере нет данных о файле.
- "Перезаписать" - false, но файл с таким именем уже есть в папке.
Если в поле "Выбор прокси-сервера" выбран системный или без прокси, то поля (см. скрин), связанные с настройкой прокси-сервера игнорируются, даже если они чем-то заполнены.
Если отмечено Получить файл:
Необязательно, чтобы в ответе были какие-то определенные заголовки. Без заголовков сохранится просто файл без расширения. В ответе от сервера мы получаем просто набор байт, в нем могут присутствовать заголовки с именем и расширением файла, но они могут и отсутствовать. Если не будет указано иной информации, этот набор байт можно преобразовать в какой-нибудь файл с рандомным именем без расширения. Это и сохранится в результате.
Если пользователь пользователь указал в поле "Имя файла" неверное расширение, то скачанный файл не откроется. Изменить название и поставить правильное расширение уже можно будет после скачивания вручную.
Логика "Выбор прокси-сервера":
1. Системный прокси-сервер = что бы ни было заполнено в остальных полях, всегда используются системные настройки ОС.
2. Пользовательский прокси-сервер = поля настроек прокси заполнены - используем эти настройки для подключения к прокси.
3. Без прокси-сервера = ничего не заполнено - подключение без прокси, игнорируются данные параметров прокси, если даже заполнены.
Примеры использования
Пример 1
Задача: выполнить GET запрос к сервису https://gorest.co.in/public-api/users
Решение: воспользоваться действием "Отправить запрос".
Реализация:
- Перетащить на рабочую область действие "Отправить запрос" и заполнить поле "URL REST-сервиса" значением https://gorest.co.in/public-api/users
- Запустить робота по кнопке "Старт" в верхней панели.
Результат:
Действие отрабатывает успешно, выполняя GET запрос
Пример 2
Задача: выполнить GET запрос к сервису https://gorest.co.in/public-api/users, создавая файл с указанным именем в каждой указанной папке
Решение: воспользоваться действием "Отправить запрос".
Реализация:
- Перетащить на рабочую область действие "Отправить запрос" и заполнить поле "URL REST-сервиса" значением https://gorest.co.in/public-api/users
- Заполнить параметр "Получить файл" = Истина
- Заполнить параметр "Путь до папки":
- Абсолютный путь C:\
- Относительный путь %userprofile%
- путь вида \\LKURAMSHINA-PC\Users\lkuramshina\folder
- Длина полного пути >244 и <260 символов - из переменной
- Заполнить параметр "Имя файла".
5. Запустить робота по кнопке "Старт" в верхней панели.
Результат:
Действие отрабатывает успешно, создавая файл с указанным именем в каждой указанной папке
ИЛИ
- Повторить действия 1-2
- Корректно заполнить параметр "Путь до папки":
- Заполнить параметр "Имя файла"
- имя на кириллице без расширения: Тест
- имя на латинице с расширением txt: Test.txt
- имя на кириллице и латинице из переменной: TestТест123.txt
- имя с допустимыми символами: !№;%;.txt
- Запустить робота по кнопке "Старт" в верхней панели.
Результат:
Действие отрабатывает успешно, создавая файл с указанным именем в указанной папке.
Пример 3
Задача: выполнить GET запрос к сервису https://gorest.co.in/public-api/users, успешно перезаписав файл
Решение: воспользоваться действием "Отправить запрос".
Реализация:
- Перетащить на рабочую область действие "Отправить запрос" и заполнить поле "URL REST-сервиса" значением https://gorest.co.in/public-api/users
- Заполнить параметр "Получить файл" = Истина.
- Заполнить параметр "Имя файла".
- Заполнить параметр "Путь до папки".
- Заполнить параметр "Перезаписать" = Истина.
- Запустить робота по кнопке "Старт" в верхней панели.
Результат:
Действие отрабатывает успешно, файл перезаписывается