Na WEMOS D1 R1 mám připojený modul SD karta (tady je uložený soubor default.txt a obrazek.jpg)
soubor default načtu, ale není na stránce obrázek.
Jak se načte a zobrazí na webovém prohlížeči?
Kód: Vybrat vše
#include <ESP8266WiFi.h>
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <SPI.h>
#include <SD.h>
File myFile;
const String html;
const byte DNS_PORT = 53;
DNSServer dnsServer;
IPAddress apIP(192, 168, 1, 1);
ESP8266WebServer server(80);
void handleRoot() {
String html;
myFile = SD.open("default.txt");
if (myFile) {
while (myFile.available()) {
html = html + char (myFile.read());
}
myFile.close();
}
server.send ( 200, "text/html", html);
}
void handleNotFound() {
server.send ( 200, "text/plain", html );
}
void setup() {
Serial.begin(9600);
if (!SD.begin(4)) {
Serial.println("initialization failed!");
return;}
delay(1000);
WiFi.mode(WIFI_AP);
WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0));
WiFi.softAP("FREE WIFI","", 4, 0);
dnsServer.setTTL(100);
dnsServer.setErrorReplyCode(DNSReplyCode::ServerFailure);
// start DNS server "*" vsechno presmerovat na 192.168.1.1
dnsServer.start(DNS_PORT, "*", apIP);
IPAddress myIP = WiFi.softAPIP();
server.on ( "/", handleRoot );
//server.on ( "/inline", []() {
//server.send ( 200, "text/plain", "this works as well" );
// } );
server.onNotFound ( handleNotFound );
server.begin();
}
void loop() {
dnsServer.processNextRequest();
server.handleClient();
}