You are here

Поля объекта RTP Request

Ниже перечислен список полей объекта Request, создаваемого функцией RTP.CreateRequest().

string Url;
Поле задаёт ссылку на запрашиваемую страницу и используется только тогда, когда не указаны поля UrlServer и UrlPort для их автоматического определения по содержимому ссылки.
string OriginalUrl;
Вспомогательное поле. Не используется самим модулем RTP, но может быть использовано пользователем для хранения любых данных при обработке редиректов на другие ссылки.
string UrlServer;
Адрес сервера из ссылки, к которой происходит обращение. Если адрес и порт не указаны, то они автоматически берутся из ссылки, указанной в поле Url.
string UrlObject;
Объект на сервере, к которому происходит обращение. Для ссылки вида http://127.0.0.1/path/to/file.txt объект будет равен "/path/to/file.txt". Если объект не задан явно, его значение берётся из поля Url.
integer UrlPort;
Порт сервера из ссылки, к которой происходит обращение. Если адрес и порт не указаны, то они автоматически берутся из ссылки, указанной в поле Url.
string UrlProtocol;
Протокол ссылки (или "http" или "https", без "://"). Если протокол не задан явно, его значение берётся из поля Url.
string UrlHash;
Поле содержит внутристраничный анкор ссылки вместе с символом '#'. Например, для ссылки вида http://localhost/index.html#anchor поле будет равно '#anchor'
string ServerAddress;
Адрес сервера, к котому необходимо подключиться. Если адрес не указан, он берётся из поля UrlServer, которое, в свою очередь, может быть как заполнено пользователем, так и получено автоматически из поля Url.
integer ServerPort;
Порт сервера, к которому необходимо подключиться. Если порт не указан, он берётся из поля UrlPort, которое, в свою очередь, может быть как заполнено пользователем, так и получено автоматически из поля Url.
bool UseProxies;
Параметр определяет нужно ли использовать прокси при выполненни запроса. Значение true - нужно использовать, false - необходимо подключаться напрямую к серверу без использования прокси.
string ProxyGroup;
Имя группы прокси, из которой необходимо выбрать прокси при подключении.
integer ProxyCheckInterval;
Минимальное время в миллисекундах между повторным использованием одного и того же прокси. Модуль RTP выбирает прокси таким образом, чтобы интервал обращения через один и тот же прокси был больше указанного в этом поле.
bool ProxyManual;
При установке в этом поле значения true появляется возможность указать вручную адрес, порт и тип прокси. Прокси при этом не проверяется и после выполнения запроса не попадает во внутренние списки прокси. Значение по умолчанию - false.
string ProxyAddress;
Адрес выбранного автоматически прокси (при условии, что включен параметр UseProxies).
integer ProxyPort;
Номер порта у выбранного авоматически прокси.
string ProxyType;
Тип выбранного автоматически прокси ("socks4", "socks5", "https").
integer NoProxiesSleep;
Поле задаёт время в миллисекундах, в течение которого поток RTP должен простаивать, если для обработки запроса нет свободных прокси. Если пауза при отсутствии прокси не нужна, необходимо указать 0.
string Request;
Поле должно содержать в себе весь HTTP-запрос целиком, включая метод запроса, заголовки и пустую строку после заголовков.
integer MaxDownloadSize;
Поле задаёт максимальный размер скачиваемой страницы в байтах. Значение по умолчанию - 65536 байт.
integer Retries;
Поле задаёт количество попыток повторить запрос в случае ошибки. 0 - не пытаться выполнить запрос повторно при ошибке.
integer RetryOptions;
Поле задаёт список ошибок, при которых следует автоматически повторить запрос без уведомления скриптов.
string AnswerHeaders;
Заголовки полученного от сервера ответа.
string DecodeToUnicode;
Текстовая строка, указывающая на необходимость перекодирования текста из указанной кодировки в unicode при чтении поля AnswerData скриптами. Поддерживаемые значения: 'cp1251', 'cp1252', 'utf8', 'koi8r', 'iso-8859-1', 'auto' (кодировка определяется автоматически по мета-тегам). Пустая строка - не производить перекодирование.
string AnswerData;
Тело ответа сервера.
bool ReceiveHeaders;
Поле позволяет отключить приём заголовков в случае использования протокола, отличного от HTTP. Значение true - принимать заголовки, false - не принимать заголовки.
string SaveToFile;
Поле содержит имя файла, в котором будет записаны полученные от сервера данные, если это необходимо. Пустое значение поля - не записывать данные на диск.
integer SaveToFileOptions;
Опции сохранения данных в файл. Значения: 1 - сохранять заголовки, 2 - сохранять тело ответа, 3 - сохранять и заголовки и тело ответа сервера.
string RequestSent;
После отправки запроса в этом поле сохраняется полная копия отправленных на сервер данных.
string BindAddress;
Поле задаёт IP-адрес компьютера, с которого необходимо отправлять запрос. Указывать IP-адрес необходимо лишь в том случае, когда компьютер имеет несколько IP-адресов и подключаться нужно с определённого адреса.
string OnError;
Имя функции из скриптов, которую необходимо вызвать в случае ошибки при выполнении запроса. В функцию передаётся сам запрос и код ошибки. Функция должна вернуть один из статусов.
string OnAfterProxySelected;
Имя функции из скриптов, которую необходимо вызвать после выбора прокси для подключения. Функция должна вернуть один из статусов. Пустое значение - не вызывать функцию.
string OnAfterConnectionEstablished;
Имя функции из скриптов, которую необходимо вызвать сразу послед подключения к серверу. Функция должна вернуть один из статусов. Пустое значение - не вызывать функцию.
string OnAfterRequestSent;
Имя функции из скриптов, которую необходимо вызвать после того, как запрос будет отправлен на сервер. Функция должна вернуть один из статусов. Пустое значение - не вызывать функцию.
string OnAfterHeadersReceived;
Имя функции из скриптов, которую необходимо вызвать после того, как будут получены HTTP-заголовки ответа сервера. Функция должна вернуть один из статусов. Пустое значение - не вызывать функцию.
string OnAfterDataReceived;
Имя функции из скриптов, которую необходимо вызвать после получения тела ответа сервера. Функция должна вернуть один из статусов. Пустое значение - не вызывать функцию.