Stairs/src/server/static.cpp

35 lines
1.1 KiB
C++

/*
* Stairs
* Copyright 2017 (c) Mark van Renswoude
*
* https://git.x2software.net/pub/Stairs
*/
#include "static.h"
#include "../debug.h"
#include "../assets/html.h"
#include "../assets/js.h"
#include "../assets/css.h"
#include "../assets/images.h"
void handleStatic(AsyncWebServerRequest *request, const String& contentType, PGM_P content)
{
_d("HTTP :: static: "); _dln(request->url());
request->send_P(200, contentType, content);
}
void registerStaticRoutes(AsyncWebServer* server)
{
server->on("/", HTTP_GET, [](AsyncWebServerRequest *request) { handleStatic(request, "text/html", EmbeddedIndex); });
server->on("/bundle.js", HTTP_GET, [](AsyncWebServerRequest *request) { handleStatic(request, "text/javascript", EmbeddedBundleJS); });
server->on("/bundle.css", HTTP_GET, [](AsyncWebServerRequest *request) { handleStatic(request, "text/css", EmbeddedBundleCSS); });
server->on("/logo.png", HTTP_GET, [](AsyncWebServerRequest *request)
{
_d("HTTP :: static: "); _dln(request->url());
AsyncWebServerResponse *response = request->beginResponse_P(200, "image/png", EmbeddedLogo, sizeof(EmbeddedLogo));
request->send(response);
});
}