КАК ПОСТРОИТЬ WEB SERVER НА ESP32

แชร์
ฝัง
  • เผยแพร่เมื่อ 30 ม.ค. 2025

ความคิดเห็น •

  • @АлексейК-т9ц
    @АлексейК-т9ц 2 ปีที่แล้ว +4

    Отличный урок .. давно искал что то подобное а здесь все и сразу)). Спасибо!!!

    • @kirill-ivanychev
      @kirill-ivanychev  2 ปีที่แล้ว +1

      Пожалуйста, уже готовлю к нему дополнение,

  • @kardanium
    @kardanium 2 ปีที่แล้ว +7

    Поднимал WEB на ESP8266 (с фреймворком Arduino). WEB станицы разрабатывал сам, подняв виртуальный хост на сервере Apache. Бэкэнд на сервере писал на PHP (писал чисто обслуживание команд клиента и выдачу примеров данных). Шаблонизация страниц выполняется на стороне клиента с помощью JavaScript. Многие данные приходят в виде JSON, например такие, как пункты меню, подписи к кнопкам, текущие данные о статусе и прочее. А JS, имея шаблон HTML страницы, сам наполняет страницу контентом. Потом, после разработки комплекта скриптов и html шаблонов, был написан бэкэнд для сервера на МК, а файлы WEB страниц, скриптов и стилей были закинуты на "диск" в микроконтроллере (SPIFFS, она же LittleFS) Такой подход был выбран из тех соображений, чтобы не грузить МК лишними действиями. И процесс разработки WEB страницы перестал отличаться от такового для "взрослых" систем.

    • @kirill-ivanychev
      @kirill-ivanychev  2 ปีที่แล้ว

      Отлично! Главное, что вы нашли удобный для себя способ построения веб.

  • @alek-x0
    @alek-x0 3 หลายเดือนก่อน +2

    Спасибо! Очень понравилось!

    • @kirill-ivanychev
      @kirill-ivanychev  3 หลายเดือนก่อน

      @@alek-x0 пожалуйста, Я рад что вы нашли что-то полезное для себя в этом видео

  • @aleksandrkozlov9286
    @aleksandrkozlov9286 2 ปีที่แล้ว +3

    Спасибо, было интересно

  • @3dprinterdoma
    @3dprinterdoma 2 ปีที่แล้ว +2

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

    • @kirill-ivanychev
      @kirill-ivanychev  2 ปีที่แล้ว

      Этот код по структуре отличается от Arduino-скетчей.
      Вы можете взять для ознакомления пример реализации сервера точно по той же структуре, что и в моем видео.
      Пример можно взять вот здесь:
      github.com/espressif/esp-idf/blob/master/examples/protocols/http_server/simple/main/main.c

  • @vlad5101
    @vlad5101 6 หลายเดือนก่อน +2

    Класно объясняешь, спасибо

    • @kirill-ivanychev
      @kirill-ivanychev  6 หลายเดือนก่อน

      @@vlad5101 пожалуйста:-)

  • @sergc9068
    @sergc9068 2 ปีที่แล้ว +2

    Насколько я понимаю, этот сервер может обрабатывать одну сессию одного пользователя одновременно.

    • @kirill-ivanychev
      @kirill-ivanychev  2 ปีที่แล้ว +2

      Я тестировал параллельное подключение от мобильника, планшета и через ethernet контроллер. Работает со всеми девайсами хорошо

    • @sergc9068
      @sergc9068 2 ปีที่แล้ว +1

      @@kirill-ivanychev Я наверное не правильно задал вопрос.
      Если например сделать страницу для того чтобы пользователи оставляли отзывы на сервере, то несколько одновременно пользователей, будут конкурировать и перезаписывать данные в полях на странице. После нажатия сохранить, наверное останется в полях каша от всех пользователей, которые одновременно набирали?

    • @kirill-ivanychev
      @kirill-ivanychev  2 ปีที่แล้ว +1

      @@sergc9068 Я вижу решение такой задачи следующим образом. В сервере пишу обработчик запроса в котором выгребаю данные отзыва, которые прислал отдельный пользователь: имя, электронная почта, текст отзывы. Этот обработчик сохраняет полученные данные в виде записи отзыва. Следующий пользователь также напишет свои данные отзыва и по нажатию на кнопку отправки сформируется запрос с данными отзыва по той же структуре. Сервер обработает этот запрос и сохранит ещё одну запись. И так далее...
      В такой реализации каши получится не должно.
      Ну а вообще серверы на esp32 всё-таки предназначены для управления железом умной электроники, для датчиков, измерительной и контролирующей аппаратуры

    • @sergc9068
      @sergc9068 2 ปีที่แล้ว +1

      @@kirill-ivanychev Усложняю задачу. На сервере стоит проверка правильности маски например электронной почты. И пользователям пришло уведомление что нужно исправить почту. К тому же бывает что пользователи могут нажать все кнопку отправки одновременно.
      Это я потихоньку подвожу к варианту с асинхронным вебсервером.
      Насколько я знаю именно представленный в видео Вами сервер - он однопользовательский на одну сессию одновременно. К тому же не плохо там включить авторизацию. И тогда можно более спокойно пользоваться управлением своего умного дома. Однопользовательского интерфейса вполне хватает для таких целей.

    • @kirill-ivanychev
      @kirill-ivanychev  2 ปีที่แล้ว

      @@sergc9068 всё верно, этот сервер предназначен для задач устройств умного дома

  • @openFrimeTv
    @openFrimeTv ปีที่แล้ว +2

    почему так мало просмотров? контент на уровне

    • @kirill-ivanychev
      @kirill-ivanychev  ปีที่แล้ว

      Спасибо. Просмотров, по всей видимости мало потому, что я не пользуюсь способами накрутки просмотров. Видео смотрят только те, кому тема действительно интересно

    • @openFrimeTv
      @openFrimeTv ปีที่แล้ว +1

      @@kirill-ivanychev ну нужно ж еще и доход получать с ютуба. любая работа должна быть оплачиваемой

    • @kirill-ivanychev
      @kirill-ivanychev  ปีที่แล้ว +1

      Если вы хотите мне предложить гонорар, то я только за! :-)