To use ESP-FS-WebServer, you need to initialize a filesystem (like LittleFS), instantiate the FSWebServer class with a port, the filesystem reference, and a hostname, and then call startWiFi() and begin(). You must call server.run() in your loop() to handle incoming requests.
Note: startWiFi(timeout) will attempt to connect to saved credentials or start a captive portal if no credentials are available.
#include <FS.h>
#include <LittleFS.h>
#if defined(ESP8266)
#include <ESP8266WiFi.h>
#else
#include <WiFi.h>
#endif
#include "FSWebServer.h"
// Use LittleFS
fs::FS& filesystem = LittleFS;
FSWebServer server(80, filesystem, "esphost");
void setup() {
Serial.begin(115200);
// Initialize Filesystem
if (!filesystem.begin()) {
Serial.println("Error mounting file system.");
return;
}
// Start WiFi (or captive portal if no credentials)
server.startWiFi(10000);
// Add a handler for the root page
server.on("/", []() {
server.send(200, "text/html", "<h1>Hello from FSWebServer!</h1>");
});
// Start the server
server.begin();
Serial.println("HTTP server started.");
}
void loop() {
server.run();
}