ESP8266 - веб-сервер, обмен данным
- Войдите на сайт для отправки комментариев
Втр, 05/10/2021 - 19:30
Добрый день, камрады. Прошу консультации. Рисую веб-морду для настроек esp, сами настройки хранятся в структуре в eeprom, веб станица лежит в файловой системе. После загрузки станицы (или во время загрузки) нужно чтобы значения полей структуры попали в соответствующие поля веб станицы, что нужно использовать: json, post, ещё что то?
При нажатии кнопки «сохранить», данные со страницы должны быть отправлены в esp, аналогичный вопрос.
Сорри за чайниковские вопросы, тема для меня новая, не хочется сразу начинать закручивать гвозди отверткой )))
Использую ESPAsyncWebServer если важно.
Пойдет и post и json и get и xml и тупо подстановка и что угодно. Всё зависит от задачи и навыков. Для начала придется всё-таки изучить технологии, с которыми работаешь.
Собственно суть вопроса - что ПРАВИЛЬНО применять для первой и второй задачи (то и буду штудировать)…
Вот проштудируй, поймешь что можно и нужно и то и то. А что касается "ПРАВИЛЬНО" - правила устанавливаешь ты сам в своем проекте.
Если клиент самый тупой, без Javascript, то JSON нет смысла наворачивать.
А в абстрактном случае подбрось монетку. Что с тем намучаешься, что с этим.
Сосредоточие мудрости, блин. Перефразирую вопрос ещё раз - вот в например, в столярке есть рубанок, есть стамеска, есть наждачка. Всем этим можно при желании и упорстве сделать доску гладкой (это к фразе «твой проект - твои правила»), но все же есть выработанные жизнью области использования каждого инструмента. Сделал отправку данных формы через get, через день читаю что это неправильно и потенциально чревато проблемами. Собственно поэтому и прошу консультации как такие задачи решать ПРИНЯТО (я не прошу решения задачи, нужно направление куда копать)
Программирование это не столярка. В программировании для любой задачи 10 инструментов и у каждого свои плюсы и минусы.
Дак чем правильно доску гладкой делать?
Плотником )))
Плотником )))
Ну логично тогда же, что Ваша задача решается программистом.
Ну, если страница хранится как неизменная цельная сущность (не динамически формируется во время выгрузки), то данные в неё можно после выгрузки с помощью AJAX закидывать, равно как и получать из нее без перезагрузки. А можно закидывать аяксом , а получать из формы с перезагрузкой страницы. Я такую штуку применяю в конфигураторе есп8266. Сначала она точка доступа с фиксированным ссидом. Подгружается страница на которой можно выбрать конфигурации прдназначения, айпишник, мак , привязку датчиков температуры к точкам измерения (по индексу 1ware). При этом измерения температуры закидываются в страницу аяксом, а вся выставленная конфигурацися возвращается запросом из формы.
Вот это точно решит проблему. А заодно сделает возможным динамическое изменение данных на странице - http://arduino.ru/forum/programmirovanie/microajax-dlya-arduino
ТС, не тупи. Используй для начала POST. Потом сам поймёшь - так оставить или «наворотить». По крайней мере POST самое простое и надежное.
Ок, спасибо за ликбез, пошёл разбираться с Ajax и post.
http://digitrode.ru/computing-devices/mcu_cpu/3201-esp8266-i-ajax-dinamicheskoe-obnovlenie-veb-stranicy-bez-perezagruzki.html
https://esp8266-arduinoide.ru/ajax/