Синтаксис
function RequestHTTP(const AConnectTimeout: Integer = 8000; AReadTimeout: Integer = 5000): TM_HTTP;
Описание
Создает и возвращает новый экземпляр TM_HTTP для выполнения HTTP POST/GET/PUT запросов. Имеет следующие параметры:
•AConnectTimeout - необязательный параметр. Определяет максимальное время ожидания (в миллисекундах) при установке соединения с сервером. Оптимальное значение для большинства задач - 8000мс. (8 секунд), оно используется по умолчанию. Слишком маленькое значение может приводить к ложным ошибкам на медленном или мобильном интернете. Слишком большое значение заставит скада-систему долго ждать ответа, если сервер полностью недоступен или выключен.
•AReadTimeout - необязательный параметр. Определяет максимальное время ожидания (в миллисекундах) ответа от сервера после того, как соединение уже было успешно установлено. Значение по умолчанию: 5000мс. (5 секунд). Если HTTP сервер не успеет передать данные за указанный период, то запрос прервется с текстом "Read timed out.". Увеличивайте этот параметр только в тех случаях, когда удаленный сервер выполняет «тяжелые» и длительные операции и долго отвечает.
Выполняя HTTP запросы можно отправлять и получать данные от любых серверов с открытым API. Примеры таких серверов:
•погодные серверы с API: weatherstack.com, openweathermap.org, accuweather.com, Яндекс.Погода и т.д. Примеры скриптов рассмотрены по ссылке.
•сервис для отправки SMS-сообщений: sms.ru.
•получение информации о IP-адресах: ipstack.com.
Примеры скриптов
Примеры HTTP запросов рассмотрены по ссылке.