Запрос HTTP
Создает запрос к конечной точке сервера для получения ответа. Имеет возможности аутентификации, что отличает его от элемента Запрос WEB-сервиса. Поддерживается только на ОС Windows.
ВАЖНО! Элемент не является встроенным. Чтобы его использовать, нужно установить пакет Primo.Networking любым из двух способов:
при помощи Менеджера зависимостей Студии;
Свойства
Описание общих свойств элемента см. в разделе Свойства элемента.
Символ *
в названии свойства указывает на обязательность заполнения.
Свойство | Тип | Описание |
---|---|---|
OAuth1: | ||
Consumer key | String | Consumer key |
Consumer secret | String | Consumer secret |
OAuth1 token | String | OAuth1 token |
OAuth1 secret | String | OAuth1 secret |
OAuth2: | ||
OAuth2 token | String | OAuth2 token |
Аутентификация сертификата клиента: | ||
Сертификат клиента | String | Сертификат клиента |
Пароль сертификата | String | Пароль сертификата |
Зашифрованный пароль | Зашифрованный пароль сертификата. Пароль, зашифрованный с помощью SecureString, не хранится в открытом виде. Получить его можно, к примеру, из программы "Диспетчер учетных данных" (Credential Manager) | |
Проверка SSL | Boolean | Установите отметку, если нужно включить проверку сертификата SSL |
Ввод: | ||
URL* | String | URL-адрес, на который сделан запрос |
Метод | - | Выберите метод запроса. По умолчанию GET |
Формат | - | Выберите формат ответа, требуемый от сервера. По умолчанию установлен ANY - любой формат |
Вывод: | ||
Заголовки | Dictionary<string, string> | Заголовки ответа |
Контент | String | Контент ответа сервера |
Статус | Int32 | Статус ответа сервера |
Параметры запроса: | ||
Cookies | Dictionary<string, string> | Cookies |
Вложения | Dictionary<string, string> | Массив путей файлов для загрузки в запрос |
Заголовки | Dictionary<string, string> | Заголовки запроса |
Параметры | Dictionary<string, string> | Параметры запроса |
Путь к ресурсу | String | Путь сохранения файла, полученного от запроса |
Тело | String | Тело запроса. Обращаем внимание, что кавычки в теле запроса необходимо экранировать с помощью символа |
Формат | String | Задайте формат тела. По умолчанию используется XML |
Сегменты URL | Dictionary<string, string> | Словарь сегментов, добавляемых к URL. Задаются в формате "{key}" |
Простая проверка подлинности: | ||
Логин | String | Логин |
Пароль | String | Пароль |
Зашифрованный пароль | Зашифрованный с помощью SecureString пароль |
Решение типовых проблем
1. Не соблюдается значение таймаута, установленное в общих свойствах. Например, установлен таймаут 600000
мс (600 секунд), но ошибка таймаута появляется через 21 секунду.
Таймаут определяет предельное время ожидания ответа от сервера. Классическая ошибка таймаута означает, что ответ от сервера получить не удалось. Такое сообщение будет иметь вид:
Однако если в консоли отображается другое сообщение:
Это означает, что с большой вероятностью существует системное ограничение ОС. В данном случае именно по истечении системного таймаута мы получили ошибку выше - он имеет приоритет перед таймаутом из свойств элемента. Соответственно, чтобы решить проблему, потребуется изменить параметры конфигурации TCP/IP.
Подробнее о них можно прочитать здесь. Рекомендуем обратить внимание на параметры TcpInitialRTT и TcpMaxConnectRetransmissions.
Last updated