11#include <ESPAsyncWebServer.h>
18namespace web_server_base {
26 bool canHandle(AsyncWebServerRequest *request)
override {
return next_->canHandle(request); }
28 void handleUpload(AsyncWebServerRequest *request,
const String &filename,
size_t index, uint8_t *data,
size_t len,
29 bool final)
override {
30 next_->handleUpload(request, filename, index, data,
len,
final);
32 void handleBody(AsyncWebServerRequest *request, uint8_t *data,
size_t len,
size_t index,
size_t total)
override {
33 next_->handleBody(request, data,
len, index, total);
54 request->requestAuthentication();
64 void handleUpload(AsyncWebServerRequest *request,
const String &filename,
size_t index, uint8_t *data,
size_t len,
65 bool final)
override {
70 void handleBody(AsyncWebServerRequest *request, uint8_t *data,
size_t len,
size_t index,
size_t total)
override {
89 this->
server_ = std::make_shared<AsyncWebServer>(this->
port_);
91 DefaultHeaders::Instance().addHeader(
"Access-Control-Allow-Origin",
"*");
95 this->
server_->addHandler(handler);
123 std::shared_ptr<AsyncWebServer>
server_{
nullptr};
132 void handleUpload(AsyncWebServerRequest *request,
const String &filename,
size_t index, uint8_t *data,
size_t len,
133 bool final)
override;
134 bool canHandle(AsyncWebServerRequest *request)
override {
135 return request->url() ==
"/update" && request->method() == HTTP_POST;
bool canHandle(AsyncWebServerRequest *request) override
uint32_t ota_read_length_
bool isRequestHandlerTrivial() override
void handleUpload(AsyncWebServerRequest *request, const String &filename, size_t index, uint8_t *data, size_t len, bool final) override
OTARequestHandler(WebServerBase *parent)
uint32_t last_ota_progress_
void handleRequest(AsyncWebServerRequest *request) override
std::shared_ptr< AsyncWebServer > get_server() const
float get_setup_priority() const override
void set_auth_password(std::string auth_password)
void set_port(uint16_t port)
void set_auth_username(std::string auth_username)
void add_handler(AsyncWebHandler *handler)
std::vector< AsyncWebHandler * > handlers_
std::shared_ptr< AsyncWebServer > server_
uint16_t get_port() const
internal::Credentials credentials_
Credentials * credentials_
void handleUpload(AsyncWebServerRequest *request, const String &filename, size_t index, uint8_t *data, size_t len, bool final) override
void handleRequest(AsyncWebServerRequest *request) override
AuthMiddlewareHandler(AsyncWebHandler *next, Credentials *credentials)
void handleBody(AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total) override
bool check_auth(AsyncWebServerRequest *request)
MiddlewareHandler(AsyncWebHandler *next)
bool canHandle(AsyncWebServerRequest *request) override
bool isRequestHandlerTrivial() override
void handleUpload(AsyncWebServerRequest *request, const String &filename, size_t index, uint8_t *data, size_t len, bool final) override
void handleRequest(AsyncWebServerRequest *request) override
void handleBody(AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total) override
Providing packet encoding functions for exchanging data with a remote host.