• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Решено Отловить тело файла в POST-запросе

alfik777

Member
На WEB-сервер необходимо отправить файл, который "на лету" распарсивается и сформированные данные записываются в EEPROM esp8266. Для WEB-сервера используется библиотека ESP8266WebServer, но POST- запрос с файлом формируется и отправляется с помощью ajax со стороны клиента (изменять это нежелательно), т.е. без Upload POST -запрос уже идет к серверу. Раньше я вручную распарсивал все GET-ы и из POST "извлекал" тело файла. При использовании библиотеки ЕSP8266WebServer с GET уже не нужно извращаться. Подскажите, может есть что-то готовое и для вылавливания передаваемого файла в POST-запросе, может даже в самой библиотеке SP8266WebServer ?
 

enjoynering

Well-known member
может не самый правильный вариан, но вот что пришло на ум. а если с помощью ArduinoJson. файл засовывать в JSON {"file":"log.txt","data":1351824120ngfdjgnfdjgnjnfdsdfgsdfg"}, а потом парсить уже дату с пмощью string функций
 

alfik777

Member
Вопрос решен. После HTTPUpload& upload = HTTP.upload(); полезная часть POST-запроса ( т.е. передаваемый файл)
находится в upload.buf . По окончании загрузки ( upload.status = UPLOAD_FILE_END ) можно считывать буфер и распарсивать данные из файла.
 
  • Like
Реакции: kab
Сверху Снизу