ESP8266WebServer
我正在使用该库在 ESP8266 上构建一个网页。问题在于较大的 html 文件,尽管有足够的程序空间和可用内存,但我无法加载页面。
我相信问题是内存溢出webserver.send(200,"text/html",htmlDoc);
有没有办法通过将网页分成更小的部分来将网页“缝合”在一起?
我建议您使用 ARDUINO EDI 进行编码,并使用 ESP8266WebServer 库。
我做了同样的事情,并注意到,在 ARDUINO EDI 1.65 中,网页将产生比使用 ARDUINO 1.68 或 1.69 更多的代码/RAMusage。
接下来,使用静态网页文本,F()函数是这样的
////////////////////
// make html footer
////////////////////
void MakeHTTPFooter(void)
{
G_WebSeite += F("\r\n<div style=\"font-size:x-small\">");
G_WebSeite += F("\r\n\t<BR>Aufrufzähler = ");
G_WebSeite += G_ulReqcount;
G_WebSeite += F("\r\n\t<BR>Uptimezähler = ");
G_WebSeite += CalcUptime(Guptime);
G_WebSeite += F("\r\n\t<BR>Verbindungszähler = ");
G_WebSeite += G_ulReconncount;
G_WebSeite += F("\r\n\t<BR>WiFi-Staerke = ");
G_WebSeite += G_WiFiSignalStrength;
G_WebSeite += F("dbm");
G_WebSeite += F("\r\n\t<BR>Freies RAM = ");
G_WebSeite += (uint32_t)system_get_free_heap_size();
G_WebSeite += F("\r\n</div>\r\n</body>\r\n</html>");
delay(1);
}
节省内存。
为了发送网页,我看到了一些代码,其中大型网页以短片形式流式传输到客户端。
抱歉,我没有存储链接,请在此处搜索 Internet,以获取 Streaming large Webpages。
我希望这能帮到您。
来自德国柏林的 Mickbaer