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

Gajendra Singh Kushwah спросил: 12 мая 2018 в 03:47 в: arduino

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

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

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


1 ответ

Gajendra Singh Kushwah ответил: 13 мая 2018 в 10:25

Используйте 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);

}