Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Отправить запрос 

...

Версия 17 (Java)

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

...

Описание

Действие отправляет HTTP-запрос для обращения к RESTful веб-сервису.

Image Removed

...

Иконка действия

Image Added

Параметры и их настройки

Свойство

Описание

Тип

Пример заполнения

Обязательность заполнения поля

Параметры

URL REST-сервиса

URL REST-сервиса

Robin.String

https://authenticationtest.com/

Да

Метод

Определяет тип создаваемого

Тип запроса.

По умолчанию Get.

Значение по умолчанию - GET

Robin.String

GET

Нет

Тело запроса

Тело

отправляемого запроса. Позволяет отправить запрос

запроса, которое указывается в виде JSON строки

.

Robin.String


Нет

Параметры запроса

Параметры строки запроса, которые указываются в URL

Robin.Dictionary


Нет

Параметры формы

Параметры HTML формы для метода POST

.

Robin.Dictionary


Нет

Авторизация

Словарь с параметрами авторизации - Basic или Bearer Token. В случае Basic авторизации словарь должен иметь ключи «user» и «pass», а значения элементов словаря должны содержать логин и пароль пользователя. В случае Bearer Token авторизации словарь должен иметь ключ «token», а значение элемента должно содержать Bearer Token.

Robin.Dictionary

Тип аутентификации

Тип аутентификации, которая будет использоваться в отправляемом запросе. Если не заполнить поле "Параметры аутентификации", то выбранный "Тип аутентификации" будет проигнорирован. Значение по умолчанию - Нет

Robin.String

NTLM

Нет

Параметры аутентификации 

Параметры аутентификации для запроса. Если выбран тип аутентификации "Basic" или "NTLM", словарь должен иметь ключи "user" и "pass", содержащие значение логина и пароля соответственно. Если выбран тип "Bearer Token", словарь должен иметь ключ «token» со значением токена аутентификации

Robin.Dictionary

key - user, value - user

key - pass. value - password

Нет

Заголовки запроса

Набор заголовков

отправляемого

запроса и их значений. Каждый ключ в словаре это отдельный заголовок

.

Robin.Dictionary


Нет

Путь к файлу для отправки методом POST

Путь к файлу, который нужно прикрепить к запросу.

Robin.FilePath

Нет

Выбор прокси-сервера

Определяет настройки используемого прокси-сервера. Можно использовать системные настройки прокси, заданные на уровне ОС, либо настроить параметры пользовательского прокси-сервера, либо подключаться без прокси-сервера. По умолчанию используются системные настройки

.

Robin.String


Нет

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

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

Robin.String


Нет

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

Адрес прокси-сервера

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

Robin.String


Нет

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

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

Robin.String


Нет

Логин

пользователя для подключения к

прокси-

серверу

сервера

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

Robin.String

user

Нет

Пароль

пользователя для подключения к

прокси-

серверу

сервера

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

Robin.Object

password

Нет

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

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

до папки»

к папке» и «Имя файла»

.

Robin.Boolean

true

Нет

Путь

до папки

к папке

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

полученный файл.

файл, полученный при выполнении запроса

Robin.FolderPath

C:\doc\img

Нет

Имя файла

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

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

Robin.String

true

Нет

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

Перезаписать существующий файл. В случае, если значение параметра false, а

Если значение "true", и в указанной папке

уже

существует файл с таким же именем и расширением, то

будет вызвана ошибка. Значение по умолчанию - false.

новый файл его перезапишет. Если "false", файл перезаписан не будет и действие вернет ошибку

Robin.Boolean

true

Нет

Отключить SSL

Отключить SSL.

Если значение "true", то

отключается опция

функция проверки SSL-сертификата

. По умолчанию значение false.

будет отключена

Robin.Boolean

true
Нет

Результаты

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

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

Код статуса ответа, полученного от веб-сервиса. Возвращается

всеми методами.

при использовании любого метода

Robin.String

200

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

Набор заголовков и их значений, получаемых от

сервера, и их значения. Возвращается всеми методами

веб-сервиса.  Возвращается при использовании любого метода. Если в ответе

от сервера встречаются

есть повторяющиеся заголовки,

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

будет только один ключ с этим заголовком; значением ключа будет коллекция, содержащая все значения этих заголовков

Robin.Dictionary



Тело ответа

Строковая переменная, в которую запишется тело ответа

Тело ответа, полученное от веб-сервиса, в raw формате. Возвращается

всеми методами

при использовании любого метода

Robin.String



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

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

Значение идентификатора из заголовка "Id", полученного от веб-сервиса. Возвращается только

методом

при использовании метода "POST"

Robin.String

Location



Указатель ресурса

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

Robin.String



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

Отсутствуют. 

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

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

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

Задача

Пройти NTLM-аутентификацию на сайте https://authenticationtest.com/HTTPAuth/ и получить результаты в виде json-файла.

Решение

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

Реализация

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

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

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

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

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

Результат 

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

 Image Added

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

Задача

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

Решение

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

Реализация 

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

    Image Added
  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-х записей. 
    Image Removed
    Нажать Пример заполнения поля "Заголовки запроса".
    Image Added
  6. Все остальные поля не имеют отношения к смыслу запроса и его формату. Поля начиная с "Выбор прокси-сервера" и заканчивая полем "Пароль пользователя для подключения к прокси-серверу" - это все поля, которые относятся к настройке прокси-сервера, если он необходим. В нашем случае, прокси-сервер отсутствует.

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

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

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

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

Результат

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

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

Задача

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

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

Решение

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

Программный робот отработал успешно. 

Image Removed

Сохранен файл формата json с ответом от сервиса. 

Реализация

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

Результат

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