Скриптинг
Материал из Hivext Wiki
Содержание |
Скриптинг серверной логики
Сервис скриптинга позволяет размещать и выполнять скрипты в инфраструктуре платформы. Сервис занимается распределением (масштабированием) вычислительной нагрузки по нодам платформы. Взаимодействие с Hive API платформы происходит через внешний объект hivext. Он доступен из скриптов в глобальной области видимости каждого скрипта и позволяет вызывать любые методы из HiAPI и LoAPI.
Конечные точки (endpoint)
Сервис Скриптинга по умолчанию формирует адреса к скриптам в формате http://{идентификатор_приложения}.{датацетр}.hivext.ru/{имя_скрипта}
http://{идентификатор_приложения}.{датацетр}.hivext.ru/ - ведет на скрипт с названием index.
Для задания произвольного адреса к скрипту можно указывать аннотацию @url (см. Аннотации)
Обращение по адресу скрипта инициирует вызов метода Eval сервиса Скриптинга.
Передача параметров
Внешние параметры передаются в скрипт через HTTP методы:
- GET в формате UrlEncoding, например {имя_скрипта}?param1=value1&...¶mN=valueN
- POST, например через HTML форму
Параметры извлекаются в скрипте через метод GetParam.
Аннотации
Для всех скриптов из сервиса Скриптинга можно указывать аннотации прямо в коде скрипта.
| Аннотация | Значение |
|---|---|
|
@url('адрес') |
Адрес по которому будет доступен скрипт по сети. Если не определено, путь равен имени скрипта. |
|
@req('параметр') |
Указывает что перечисленные параметры в аннотации обязательные для передачи скрипту, в противном случае при вызове скрипта будет получено исключение. |
| @auth | Скрипт разрешено вызывать только авторизированным пользователям. |
| @local | Скрипт может вызывать только серверный код. При обращении к скрипту клиента по сети произойдет исключение. |
Общая информация
| Параметр | Значение |
|---|---|
| Версия сервиса | 1.0 [stable] |
| Пространство имен | Development |
| Имя сервиса | Scripting |
| Локальный доступ | hivext.development.scripting.{название_метода} |
| Сетевой доступ | http://api.hivext.ru/1.0/development/scripting/{протокол}/{название_метода} |
| Характеристика |
Языки программирования Шаблонизаторы |
| Консоль | http://code.hivext.ru/development/APIConsole/#Development.Scripting |
Методы
Разделение методов сервиса по категориям
| Управление |
|---|
|
CreateScript |
Клиенты
| Язык | Адрес |
|---|---|
| JavaScript | http://api.hivext.ru/1.0/development/scripting.js |
Компоненты
Не представлены.
