-
Notifications
You must be signed in to change notification settings - Fork 25
Как это работает
AlexGyver edited this page Sep 28, 2022
·
2 revisions
Библиотека позволяет управлять электронным устройством из браузера. Между esp и браузером устанавливаются отношения клиент-сервер. Браузер (клиент) может:
- Запросить с esp страницу, которую нужно отобразить
- Запросить с esp конкретные данные, которые нужно обновить на странице (текст, состояние чекбокса)
- Отправить на esp данные со страницы (факт нажатия кнопки, текст)
Esp (сервер) может только отвечать на запросы от браузера, самостоятельно ничего отправить на страницу он не может. Но в библиотеке есть инструменты, позволяющие наладить такое взаимодействие с элементами интерфейса.
Взаимодействие с библиотекой сводится к двум основным моментам:
- У нас есть функция, которая вызывается библиотекой, когда браузер запрашивает отображение страницы. В этой функции мы собираем страницу из готовых блоков, затем библиотека её отправляет
- У нас есть функция, которая вызывается библиотекой, когда приходит действие с браузера. В этой функции мы получаем со страницы данные, сигналы, а также отправляем ответы на запросы
Действия юзера на странице портала в браузере автоматически обрабатываются библиотекой и поступают в основную программу. Библиотека обрабатывает следующие сценарии:
- Клик/изменение: при клике на почти любой компонент интерфейса или при изменении его состояния или значения можно получить его актуальное значение без перезагрузки страницы. Удобно для управления и настройки (галочки, кнопки, слайдеры, выбор цвета).
- Обновление значений и состояний компонентов на странице в реальном времени без перезагрузки страницы. Удобно для индикации работы и получения текущих численных и текстовых значений из программы, вывод графиков в реальном времени, состояний чекбоксов и лампочек.
-
Отправка формы: при нажатии на кнопку типа
SUBMIT
страница перезагружается, а в программу приходят данные со всех компонентов, входящих в форму (текст в поле ввода, положения слайдеров и чекбоксов и так далее). Удобно для однократного ввода данных, настройки подключения и тому подобное. - Запрос на скачивание файла: позволяет скачивать файлы из памяти
- Запрос на загрузку файла: позволяет загружать файлы из браузера в память
- Запрос: переход по адресу, который не попадает под критерии выше, считается простым текстовым запросом с параметрами и может быть обработан стандартными средствами библиотеки WebServer (для применения за рамками библиотеки GyverPortal)
Документация в разработке, некоторые ссылки пока никуда не ведут
- Введение
- Действия
- Компоненты
- Файлы
- Системные модули
- Дизайн и вёрстка
- Всякие трюки