Отправить запрос Версия 15 (Java)

Группа действий: Интеграции


Описание

Действие отправляет 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


Нет

Протокол прокси- сервера

Протокол прокси-сервера. Например: http, https

Robin.String


Нет

Имя хоста или IP-адрес прокси-сервера

Имя хоста или IP-адрес прокси-сервера

Robin.String


Нет

Порт прокси-сервера

Порт прокси-сервера

Robin.String


Нет

Логин пользователя для подключения к прокси- серверу

Логин пользователя для подключения к прокси-серверу

Robin.String


Нет

Пароль пользователя для подключения к прокси-серверу

Пароль пользователя для подключения к прокси-серверу

Robin.Object


Нет

Получить файл

Возможность получить файлы из запроса. Если выбрано значение «true», обязательно должны быть заполнены поля «Путь до папки» и «Имя файла»

Robin.Boolean

true

Нет

Путь до папки

Путь к папке, в которой нужно сохранить полученный файл

Robin.FolderPath

C:\doc\img

Нет

Имя файла

Поле для имени файла с расширением

Robin.String


Нет

Перезаписать

Перезаписать существующий файл. В случае, если значение параметра false, а в указанной папке уже существует файл с таким же именем и расширением, то будет вызвана ошибка. Значение по умолчанию - false

Robin.Boolean

true

Нет

Отключить SSL

Отключить SSL. Если значение true, то отключается опция проверки SSL-сертификата. По умолчанию значение false

Robin.Boolean

true

Нет

Результаты

Статус ответа

Числовая переменная, в которую запишется код статуса ответа веб-сервиса. Возвращается всеми методами

Robin.String



Заголовки ответа

Набор заголовков, получаемых от сервера, и их значения. Возвращается всеми методами. Если в ответе от сервера встречаются повторяющиеся заголовки, их значения собираются в отдельную коллекцию, которая сохраняется в словаре с заголовком в качестве ключа

Robin.Dictionary



Тело ответа

Строковая переменная, в которую запишется тело ответа веб-сервиса в raw формате. Возвращается всеми методами

Robin.String



Идентификатор

Строковая переменная, в которую запишется идентификатор из заголовка ответа „Id“. Возвращается только методом POST

Robin.String



Location

Заголовок с указателем ресурса объекта. Имеет смысл для статусов 201, 3хх и только для метода POST

Robin.String



Особые условия использования 

Подробнее о REST:  https://ru.wikipedia.org/wiki/REST.

Пример использования 1

Задача

отправить GET запрос к сервису https://dadata.ru/api/find-party/ , сохранив результат ответа в файл формата json.

Решение

Воспользоваться действием "Отправить запрос". 

Реализация

  1. Перенести действие "Отправить запрос" на рабочую область и настроить его параметры. 
  2. Поле "URL REST-сервиса" - это адрес, к которому необходимо подключиться. Более подробная информация о методе находится по ссылке: https://dadata.ru/api/find-party/

  3. Поле "Метод" - в нашем случае необходимо указать значение GET. 

  4. Поле "Получить файл" - необходимо проставить чекбокс при необходимости. Используется, когда необходимо получить файл от сервиса. Весь ответ от сервиса будет записан в отдельный файл. 

  5. Поле "Путь до папки" и "Имя файла" - необходимо заполнить, если проставлен чекбокс в поле "Получить файл". В поле "Имя файла" необходимо указать расширение. 

  6. Нажать на кнопку "Старт" в верхней панели. 

Результат 

Программный робот отработал успешно. Сохранен файл формата json с ответом от сервиса.

Пример использования 2

Задача

Отправить POST запрос к сервису http://shop.bugred.ru/api/items/search/, для получения актуальных данных об изделии и разобрать ответ от сервиса, сохранив результат ответа в файл .txt.

Решение

Воспользоваться действием "Отправить запрос". 

Реализация 

  1. Перенести действие "Отправить запрос" на рабочую область и настроить его параметры.
  2. Поле "URL REST-сервиса" - это адрес, к которому необходимо подключиться (REST запрос) — http://shop.bugred.ru/api/items/search/. Более подробная информация о методе находится по ссылке: https://testbase.atlassian.net/wiki/spaces/SHOP/pages/1957464487/Search.
  3. Поле "Метод" - в нашем случае необходимо указать значение POST.
  4. Поле "Тело запроса" - необходимо указать текст тела запроса. {"query": "Шорты-юбка"}.
  5. Поле "Заголовки запроса" - словарь, в котором необходимо указать название заголовков и их ключи. В нашем случае словарь из 2-х записей. Пример заполнения поля "Заголовки запроса".
  6. Все остальные поля не имеют отношения к смыслу запроса и его формату. Поля начиная с "Выбор прокси-сервера" и заканчивая полем "Пароль пользователя для подключения к прокси-серверу" - это все поля, которые относятся к настройке прокси-сервера, если он необходим. В нашем случае, прокси-сервер отсутствует.

  7. Поле "Получить файл" - необходимо проставить чекбокс при необходимости. Используется, когда необходимо получить файл от сервиса. Весь ответ от сервиса будет записан в отдельный файл. 

  8. Поле "Путь до папки" и "Имя файла" - необходимо заполнить, если проставлен чекбокс в поле "Получить файл". В поле "Имя файла" необходимо указать расширение. 

  9. Поле "Перезаписать" необходимо на тот случай, если в данной папке уже содержится файл с таким же названием и расширением.

  10. При запуске робота необходимо нажать на кнопку "Старт" в верхней панели. 

Результат

Робот отработал успешно. Ответ от сервиса разобран роботом.

Пример использования 3

Задача

Необходимо отправить rest-запрос на сервис https://dadata.ru/ для получения актуальных данных об организации и разобрать ответ от сервиса.

В решении  указано, как верно заполнить параметры для конкретной  задачи, а так же рассмотрены остальные параметры.  

Решение

Воспользоваться действием "Отправить запрос". Весь процесс представлен в схеме робота rest-zapros.robin-source . 

Реализация

  1. Перенести действие "Отправить запрос" на рабочую область и настроить его параметры.

  2. Поле "URL REST-сервиса" - это адрес, к которому необходимо подключиться. Подключаться мы будем к сервису dadata. Тело запроса выглядит в одну строчку. Данные формируются в формате JSON. 
  3. Поле "Метод" - в нашем случае необходимо указать значение POST. 
  4. Поле "Тело запроса" - необходимо указать текст тела запроса.  Если параметры должны быть переданы не в теле, а в URL, то в этом случае параметры запроса необходимо указать сразу в URL. Зависит это от сервиса, т.е как сервис ожидает получить запрос (в теле запроса или в URL). 
  5. Поле "Параметры формы" - в данном поле можно заполнить значения для тела запроса. Отличие от поля "Тело запроса" : "Тело запроса"-  это строка, "Параметры формы" - словарь.  Поле "Параметры формы" используется для метода POST. В словаре указываются в виде ключей названия объектов JSON , название элементов  и далее значения по этим элементам. 
  6. Поле "Параметры запроса" - нужно на тот случай, если сервис ожидает, что параметры запроса будут переданы через URL, а не через тело запроса. 
  7. Поле "Заголовки запроса" - словарь, в котором необходимо указать название заголовков и их ключи. В нашем случае словарь из 3-х записей.
  8. Пример заполнения поля "Заголовки запроса".
  9. Один из заголовков - это заголовок с авторизацией.  Его можно указать в поле "Авторизация", но так же ошибкой не будет, если данный заголовок будет указан в поле "Заголовки запросов". 
  10. Поле "Путь к файлу для отправки методом POST"- необходимо указать путь до файла с запросом, если он требуется. 
  11. Все остальные поля не имеют отношения к смыслу запроса и его формату. Поля начиная с "Выбор прокси-сервера" и заканчивая полем "Пароль пользователя для подключения к прокси-серверу" - это все поля, которые относятся к настройке прокси-сервера, если он необходим.
  12. В поле "Выбор прокси-сервера" необходимо выбрать какой вариант использовать.
  13. Если системный прокси-сервер, то будут использоваться настройки сервера, которые установлены в самой вашей системе под которой работает робот. 
  14. Если выбрано значение "Без прокси-сервера" , то в этом случае не используются ни системные настройки , ни какие-либо другие. 
  15. При выборе значений "Системный прокси-сервер" или "Без прокси-сервера", поля ниже можно не заполнять. 
  16. Только если выбрано значение "Пользовательский прокси-сервер" необходимо заполнить поля ниже (выделены на скрине). 
  17. Остальные поля связаны с получением файла от сервиса. 
  18. Поле "Получить файл" - необходимо проставить чекбокс при необходимости. Используется, когда необходимо получить файл от сервиса. Весь ответ от сервиса будет записан в отдельный файл. 
  19. Поле "Путь до папки" и "Имя файла" - необходимо заполнить, если проставлен чекбокс в поле "Получить файл". В поле "Имя файла" необходимо указать расширение. 
  20. Поле "Перезаписать" необходимо на тот случай, если в данной папке уже содержится файл с таким же названием и расширением.
  21. При запуске робота необходимо нажать на кнопку "Старт" в верхней панели. 

Результат

Робот отработал успешно. Ответ от сервиса разобран роботом.

  • Нет меток