← Назад в FAQ

Sandbox Tagix — безопасная проверка TGX до публикации

Sandbox Tagix#

Что можно тестировать в /sandbox/, какие ограничения safe-mode и как интерпретировать ошибки.

Синтаксис#

POST /api/v1/sandbox

Пример 1: минимум (копипаст для старта)#

POST /api/v1/sandbox

Пример 2: реальный сценарий#

<form tgx:ajax-post="/api/v1/sandbox" tgx:target="#sandbox-result">
  <textarea name="template"><div tgx:if="user">Hi</div></textarea>
  <button type="submit">Проверить</button>
</form>

Пример 3: комбинированный сценарий#

<tgx tgx:set="items">["A","B","C"]</tgx>
<ul>
  <li tgx:repeat="items -> item"></li>
</ul>

Разбор#

Sandbox разрешает только безопасный поднабор директив и блокирует опасные теги/URL схемы. Есть лимиты: timeout 10s, общий бюджет repeat-итераций 5000, глубина tgx:component до 10.

Когда использовать#

  • Когда нужно управлять поведением блока прямо в шаблоне, не дублируя логику в нескольких местах.
  • Когда важно сделать поведение страницы предсказуемым для пользователя в реальных сценариях.

Частые ошибки#

  • Пытаться использовать в sandbox директивы, требующие доступ к DB/HTTP/system
  • Не учитывать лимит вложенности компонентов и лимит итераций

Проверка перед публикацией#

  • Код не содержит script/iframe/object/embed/base/link и JS URL-схем
  • Проверен объем циклов: суммарно не больше sandbox-лимита

См. также#

← Назад в FAQ

Sandbox Tagix — безопасная проверка TGX до публикации

Sandbox Tagix#

Что можно тестировать в /sandbox/, какие ограничения safe-mode и как интерпретировать ошибки.

Синтаксис#

POST /api/v1/sandbox

Пример 1: минимум (копипаст для старта)#

POST /api/v1/sandbox

Пример 2: реальный сценарий#

<form tgx:ajax-post="/api/v1/sandbox" tgx:target="#sandbox-result">
  <textarea name="template"><div tgx:if="user">Hi</div></textarea>
  <button type="submit">Проверить</button>
</form>

Пример 3: комбинированный сценарий#

<tgx tgx:set="items">["A","B","C"]</tgx>
<ul>
  <li tgx:repeat="items -> item"></li>
</ul>

Разбор#

Sandbox разрешает только безопасный поднабор директив и блокирует опасные теги/URL схемы. Есть лимиты: timeout 10s, общий бюджет repeat-итераций 5000, глубина tgx:component до 10.

Когда использовать#

  • Когда нужно управлять поведением блока прямо в шаблоне, не дублируя логику в нескольких местах.
  • Когда важно сделать поведение страницы предсказуемым для пользователя в реальных сценариях.

Частые ошибки#

  • Пытаться использовать в sandbox директивы, требующие доступ к DB/HTTP/system
  • Не учитывать лимит вложенности компонентов и лимит итераций

Проверка перед публикацией#

  • Код не содержит script/iframe/object/embed/base/link и JS URL-схем
  • Проверен объем циклов: суммарно не больше sandbox-лимита

См. также#