0
我正在使用ESP8266WebServer
庫在ESP8266上構建一個網頁。問題在於較大的html文件,儘管有足夠的程序空間和可用內存,但我無法加載頁面。ESP8266(Arduino)使用大文件
我相信這個問題是在webserver.send(200,"text/html",htmlDoc);
的內存溢出有沒有一種方法可以讓我打破了網頁成更小的碎片「十字繡」的網頁在一起嗎?
我正在使用ESP8266WebServer
庫在ESP8266上構建一個網頁。問題在於較大的html文件,儘管有足夠的程序空間和可用內存,但我無法加載頁面。ESP8266(Arduino)使用大文件
我相信這個問題是在webserver.send(200,"text/html",htmlDoc);
的內存溢出有沒有一種方法可以讓我打破了網頁成更小的碎片「十字繡」的網頁在一起嗎?
我建議您使用ARDUINO EDI進行編碼,並使用ESP8266WebServer庫。
我已經做了同樣的事情,並注意到,在ARDUINO EDI 1.65, 該網頁將產生比使用ARDUINO 1.68或1.69更多的代碼/ RAMusage, 。
接下來,使用靜態網頁,文本,這樣
////////////////////
// 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);
}
爲了節省RAM的F()函數。
要發送網頁,我已經看到一些代碼,其中大型網頁是 短片流到客戶端。
對不起,我還沒有存儲該鏈接,請在這裏搜索互聯網, Streaming large webpages。
我希望這會幫助你。
Mickbaer 來自柏林德國