问题: ESP8266 示例草图 StreamHttpClient 对于 3.1.x 版本的 Arduino SDK 来说似乎已损坏。 URL 已损坏,因为它返回 HTTP 代码 301。但是,即使修复 URL,后续从流中读取也会失败,并打印“读取超时”错误。
当前草图使用了一些过时的代码。
当前草图代码:(已损坏)
//获取tcp流 WiFiClient* 流 = &client;
这不再有效。以下调用返回 0 并且不填充任何数据,并且您会收到“读取超时”错误: int c = 流->readBytes(buff, std::min((size_t)len, sizeof(buff)));
正确代码:
WiFiClient 流 = http->getStream();
int c = Stream.readBytes(buff, std::min((size_t)len, sizeof(buff)));