Проблема Arduino HttpClient getString с символами NULL. ESP32

89
9

Ответ на мой метод http.Get(), который в шестнадцатеричном формате должен выглядеть как 0x00,0x00,0x00,0x00,0x04,0x08,0xff, но когда вы пытаетесь собрать данные с помощью response = http.getString(); я получил пустую строку может быть причиной getString() прекратить его, видя 0x00 (NULL)

Итак, есть ли какой-либо метод для замены getString() или для получения байтов unit8_t в ответе метода get

ps код работает, поскольку он подставляет, если я отредактирую ответ на 0x04,0x08,0xff на сервере

спросил(а) 2021-01-25T15:19:10+03:00 5 месяцев назад
1
Решение
125

Использовать http.getstream

WiFiClient * stream = http.getStreamPtr();
while(http.connected() && (len > 0 || len == -1))
{
// get available data size
size_t size = stream->available();
if(size) {
// read up to 128 byte
int c = stream->readBytes(response, ((size > sizeof(response)) ?
sizeof(response) : size));
if(len > 0) {
len -= c;
}
}
delay(1);

}

ответил(а) 2021-01-25T15:19:10+03:00 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема