Отправка http-запросов с куки-файлами с использованием ESP8266 - PullRequest
0 голосов
/ 03 февраля 2019

Я написал этот API: https://github.com/prp-e/iot-api-temp-humid, и когда я тестировал его, я использовал эту команду:

curl -b cookies.txt http://localhost:8000/login/username/password 

и каждый раз, когда я хотел проверить данные в таблице "Окружающая среда",Я использую

curl -c cookies.txt http://localhost:8000/env/username

Мне нужно, чтобы куки где-то хранились или создавались заново каждый раз, когда ESP8266 отправляет данные в API.там в любом случае?

1 Ответ

0 голосов
/ 03 февраля 2019

Если данные cookie невелики (менее 4096 байт), вы можете сохранить их, используя класс EEPROM .Обратите внимание, что ESP8266 на самом деле не имеет EEPROM (как правило, у Arduinos), так что это просто запись данных в зарезервированную область его флэш-памяти.Обязательно позвоните EEPROM.commit() после того, как напишите, иначе ваши изменения не будут сохранены.Документация EEPROM содержит ссылки на некоторые примеры того, как их использовать.

Если данные cookie больше, вы можете сохранить их в файле, используя SPIFFS .SPIFFS позволяет использовать часть флэш-памяти ESP8266 в качестве простой файловой системы.

Платы ESP8266 обычно имеют флэш-память низкого качества, которая может обрабатывать не более нескольких сотен тысяч записей, поэтому вы не хотите писать ввспышка очень часто.Например, если вы обновляете файлы cookie один раз в секунду, всего за один день вы напишите на флэш-память 86 400 раз.В течение двух дней вы вполне могли бы израсходовать сектор флэш-памяти, который использовался для хранения значений cookie.Поэтому будьте осторожны с тем, как часто вы изменяете значения файлов cookie и как часто вы записываете во флэш-память.

ESP8266 также имеет 512 байт оперативной памяти, связанных с его часами реального времени (RTC).Данные, сохраненные здесь, сохранятся при перезагрузке, но будут потеряны, если питание будет отключено от чипа.Поскольку это обычное ОЗУ, а не флэш-память, оно не страдает от проблем с износом и может быть безопасно переписано. Вот пример того, как его использовать.

...