Массив CheckPages
Служит для проверки доступности тех или иных страниц перед выполнением задания.
Может быть свойством корневого объекта, либо свойством одного из объектов Item
Структура
"CheckPages":[ { "Page":"<aPage>", "ExpectedIP":"<aExpectedIP>", "IncludedText":"<aIncludedText>", "UserAgent":"<aUserAgent>" }, { "Page":"<aPage>", "ExpectedIP":"<aExpectedIP_2>", "IncludedText":"<aIncludedText_2>", "UserAgent":"<aUserAgent_2>" }, ... { "Page":"<aPage>", "ExpectedIP":"<aExpectedIP_N>", "IncludedText":"<aIncludedText_N>", "UserAgent":"<aUserAgent_N>" } ]
Свойства
Свойство | Назначение | Наличие |
---|---|---|
<aPage> | проверяемая страница | Обязательно |
<aExpectedIP> | предполагаемый IP хоста страницы | Опционально |
<aIncludedText> | содержащийся в исходном коде страницы текст | Опционально |
<aUserAgent> | User-agent, используемый для загрузки исходного кода проверяемой страницы | Опционально |
Описание
Если во внешнем источнике обнаружен непустой массив CheckPages, то прежде, чем задание начнет выполняться, будет выполнена проверка на доступность страниц в соответствии с элементами массива.
Проверка страниц проходит в несколько этапов:
- Если доступен хост на котором располагается страница.
- Если IP хоста совпадает с aExpectedIP или aExpectedIP равен '0.0.0.0'.
- Если aIncludedText не пустая строка, то загружается исходный код страницы с использованием aUserAgent (редиректы не поддерживаются!). Если aUserAgent пустой, то используется User-agent, установленный для браузера. Если исходный код страницы содержит aIncludedText или aIncludedText - пустая строка.
Проверены будут не более первых пяти страниц массива. Если проверка по каждому этапу пройдена успешно, то задание продолжает выполнение, в противном случае выполнение задания прекращается.
Примеры
{ "Items":[ ... ], "CheckPages":[ { "Page":"habrahabr.ru" } ] }
{ "Items":[ ... ], "CheckPages":[ { "Page":"habrahabr.ru", "ExpectedIP":"178.248.233.33" } ] }
{ "Items":[ { ... "CheckPages":[ { "Page":"habrahabr.ru", "ExpectedIP":"178.248.233.33" } ] ... } ] }