Внутри code
может содержаться не более 25 обращений к методам API.
То же самое можно более коротко записать так:
Поддерживаются:
- арифметические операции
- логические операции
- создание массивов и списков ([X,Y])
- parseInt
и
parseDouble - конкатенация (+)
- конструкция if
- фильтр массива по параметру (@.)
- вызовы методов API
, параметр
length - циклы, используя оператор while
- методы Javascript: slice
,
push
,
pop
,
shift
,
unshift
,
splice
,
substr
,
split - оператор delete
- присваивания элементам маcсива, например: row.user.action = «test»;
- поиск в массиве или строке — indexOf
, например: «123».indexOf(2) = 1, [1, 2, 3].indexOf(3) = 2. Возвращает -1, если элемент не найден.
В данный момент не поддерживается создание функций.
Обращение к элементам массива с результатом какого-либо метода всего должно основываться на структуре JSON, а не XML. Например, правильным обращением является API.photos.search()[email protected]_id;, а не API.photos.search()[email protected]@.owner_id;
Метод execute
также может использоваться и для получения результатов нескольких не связанных между собой запросов.
В методе execute
поддерживаются логические операции (больше),
=
(больше или равно),
==
(равно) и
!=
(не равно). В данный момент поддерживаются сравнения двух строк, двух чисел и строки и числа (в этом случае строка приводится к числу).
Результат логического выражения может быть использован в управляющей конструкции if
. [
else
. ]:
Возвращает данные, запрошенные алгоритмом. При работе с методом execute
структура ответа в
XML
ближе к
JSON
и может незначительно отличаться от стандартного представления других методов.
Обратите внимание: версия API, указанная при вызове execute, не применяется автоматически к методам, вызываемым внутри code.
Обратите внимание!
Существует ограничение на объем ответа. В случае, если данные в ответе занимают больше 5 МБ, вернется ошибка 13 с комментарием «response size is too big».
Ни для кого не секрет, что VK API возвращает за один запрос к методу groups.getMembers
не более 1 000 участников. В одну секунду вы можете получить максимум 3 000 участников, так как установлено ограничение на количество запросов в секунду до 3. Эту проблему решает метод
execute
, с помощью которого вы можете получить более 100 000 участников за одну секунду и до 25 000 участников за один запрос. В этой статье я расскажу Вам, как я это реализовал.