add abstraction layer for webserver

This commit is contained in:
technyon
2022-04-28 23:08:58 +02:00
parent 47c3729800
commit 46e49f2118
6 changed files with 139 additions and 30 deletions

27
webserver/EthWebServer.h Normal file
View File

@@ -0,0 +1,27 @@
#pragma once
#include "AbstractWebServer.h"
class EthWebServer : public AbstractWebServer
{
public:
explicit EthWebServer(int port);
virtual void begin();
virtual bool authenticate(const char *username, const char *password);
virtual void requestAuthentication(HTTPAuthMethod mode, const char *realm, const String &authFailMsg);
virtual void requestAuthentication();
virtual void send(int code, const char *content_type, const String &content);
virtual void on(const Uri &uri, EthernetWebServer::THandlerFunction handler);
virtual int args();
virtual String arg(int i);
virtual String argName(int i);
virtual void handleClient();
private:
EthernetWebServer _server;
};