From 7c828c70d880e6ca8cdb455ed35cc012e37be5e3 Mon Sep 17 00:00:00 2001 From: Pablo2048 Date: Thu, 5 Dec 2024 10:21:12 +0100 Subject: [PATCH] Aktualizace na verzi 3.3.23 --- README.md | 130 +++++- docs/index.md | 128 +++++- docs/perf-c10-asynctcpsock.png | Bin 0 -> 317493 bytes docs/perf-c10.png | Bin 0 -> 302299 bytes examples/CaptivePortal/CaptivePortal.ino | 5 +- examples/Draft/Draft.ino | 37 -- examples/Filters/Filters.ino | 7 +- examples/Issue162/Issue162.ino | 84 ++++ examples/Issue85/Issue85.ino | 127 ++++++ examples/SimpleServer/SimpleServer.ino | 309 +++++++++++++- examples/StreamFiles/StreamFiles.ino | 6 +- examples/StreamFiles/StreamString.h | 40 -- examples/issues/Issue14/Issue14.ino | 107 ----- library.json_ | 4 +- library.properties | 7 +- partitions-4MB.csv | 7 + platformio.ini | 70 ++-- src/AsyncEventSource.cpp | 63 +-- src/AsyncEventSource.h | 35 +- src/AsyncJson.cpp | 10 +- src/AsyncJson.h | 10 +- src/AsyncMessagePack.cpp | 10 +- src/AsyncMessagePack.h | 10 +- src/AsyncWebSocket.cpp | 353 +++++++++------- src/AsyncWebSocket.h | 105 ++--- src/ChunkPrint.h | 1 - src/ESPAsyncWebServer.h | 89 ++-- src/Middleware.cpp | 23 +- src/WebAuthentication.cpp | 4 - src/WebAuthentication.h | 4 - src/WebHandlerImpl.h | 22 +- src/WebHandlers.cpp | 45 +- src/WebRequest.cpp | 122 ++---- src/WebResponseImpl.h | 47 +-- src/WebResponses.cpp | 112 +---- src/literals.h | 507 ++++++++--------------- 36 files changed, 1436 insertions(+), 1204 deletions(-) create mode 100644 docs/perf-c10-asynctcpsock.png create mode 100644 docs/perf-c10.png delete mode 100644 examples/Draft/Draft.ino create mode 100644 examples/Issue162/Issue162.ino create mode 100644 examples/Issue85/Issue85.ino delete mode 100644 examples/StreamFiles/StreamString.h delete mode 100644 examples/issues/Issue14/Issue14.ino create mode 100644 partitions-4MB.csv diff --git a/README.md b/README.md index 55efb4b..b4a3442 100644 --- a/README.md +++ b/README.md @@ -15,8 +15,9 @@ Supports: WebSocket, SSE, Authentication, Arduino Json 7, File Upload, Static Fi This fork is based on [yubox-node-org/ESPAsyncWebServer](https://github.com/yubox-node-org/ESPAsyncWebServer) and includes all the concurrency fixes. -- [Coordinate and dependencies](#coordinate-and-dependencies) - [Changes in this fork](#changes-in-this-fork) +- [Dependencies](#dependencies) +- [Performance](#performance) - [Important recommendations](#important-recommendations) - [`AsyncWebSocketMessageBuffer` and `makeBuffer()`](#asyncwebsocketmessagebuffer-and-makebuffer) - [How to replace a response](#how-to-replace-a-response) @@ -25,20 +26,6 @@ This fork is based on [yubox-node-org/ESPAsyncWebServer](https://github.com/yubo - [Migration to Middleware to improve performance and memory usage](#migration-to-middleware-to-improve-performance-and-memory-usage) - [Original Documentation](#original-documentation) -## Coordinate and dependencies - -**WARNING** The library name was changed from `ESP Async WebServer` to `ESPAsyncWebServer` as per the Arduino Lint recommendations. - -``` -mathieucarbou/ESPAsyncWebServer @ 3.3.7 -``` - -Dependency: - -- **ESP32**: `mathieucarbou/AsyncTCP @ 3.2.5` (Arduino IDE: [https://github.com/mathieucarbou/AsyncTCP#v3.2.5](https://github.com/mathieucarbou/AsyncTCP/releases)) -- **ESP8266**: `esphome/ESPAsyncTCP-esphome @ 2.0.0` (Arduino IDE: [https://github.com/mathieucarbou/esphome-ESPAsyncTCP#v2.0.0](https://github.com/mathieucarbou/esphome-ESPAsyncTCP/releases/tag/v2.0.0)) -- **RP2040**: `khoih-prog/AsyncTCP_RP2040W @ 1.2.0` (Arduino IDE: [https://github.com/khoih-prog/AsyncTCP_RP2040W#v1.2.0](https://github.com/khoih-prog/AsyncTCP_RP2040W/releases/tag/v1.2.0)) - ## Changes in this fork - (bug) A lot of bug fixes @@ -55,6 +42,7 @@ Dependency: - (feat) **Resumable download** support using HEAD and bytes range - (feat) `StreamConcat` example to show how to stream multiple files in one response - (feat) Removed ESPIDF Editor (this is not the role of a web server library to do that - get the source files from the original repos if required) +- (perf) [AsyncTCPSock](https://github.com/mathieucarbou/AsyncTCPSock) support: AsyncTCP can be ignored and AsyncTCPSock used instead - (perf) `char*` overloads to avoid using `String` - (perf) `DEFAULT_MAX_WS_CLIENTS` to change the number of allows WebSocket clients and use `cleanupClients()` to help cleanup resources about dead clients - (perf) `setCloseClientOnQueueFull(bool)` which can be set on a client to either close the connection or discard messages but not close the connection when the queue is full @@ -64,6 +52,112 @@ Dependency: - (perf) Lot of code cleanup and optimizations - (perf) Performance improvements in terms of memory, speed and size +--- + +## WARNING: Important notes about future version 4.x + +This ESPAsyncWebServer fork is now at version 3.x. + +Next version 4.x will: + +1. Drop support for ESP8266, which goes EOL in a few years. All ESP8266 boards can be replaced by equivalent ESP32 boards. +2. Drop support for Arduino 2.x and ESP-IDF 4.x. The library will be compatible with Arduino 3.x and ESP-IDF 5.x. +3. Drop support for ArduinoJson 5.x and 6.x. The library will be compatible with ArduinoJson 7.x. + +So if you need one of these feature, you will have to stick with 3.x or another fork. + +## Dependencies + +**WARNING** The library name was changed from `ESP Async WebServer` to `ESPAsyncWebServer` as per the Arduino Lint recommendations, but its name had to stay `ESP Async WebServer` in Arduino Registry. + +**PlatformIO / pioarduino:** + +```ini +lib_compat_mode = strict +lib_ldf_mode = chain +lib_deps = mathieucarbou/ESPAsyncWebServer @ 3.3.23 +``` + +**Dependencies:** + +- **ESP32 with AsyncTCP**: `mathieucarbou/AsyncTCP @ 3.2.14` + Arduino IDE: [https://github.com/mathieucarbou/AsyncTCP#v3.2.14](https://github.com/mathieucarbou/AsyncTCP/releases) + +- **ESP32 with AsyncTCPSock**: `https://github.com/mathieucarbou/AsyncTCPSock/archive/refs/tags/v1.0.3-dev.zip` + +- **ESP8266**: `esphome/ESPAsyncTCP-esphome @ 2.0.0` + Arduino IDE: [https://github.com/mathieucarbou/esphome-ESPAsyncTCP#v2.0.0](https://github.com/mathieucarbou/esphome-ESPAsyncTCP/releases/tag/v2.0.0) + +- **RP2040**: `khoih-prog/AsyncTCP_RP2040W @ 1.2.0` + Arduino IDE: [https://github.com/khoih-prog/AsyncTCP_RP2040W#v1.2.0](https://github.com/khoih-prog/AsyncTCP_RP2040W/releases/tag/v1.2.0) + +**AsyncTCPSock** + +AsyncTCPSock can be used instead of AsyncTCP by excluding AsyncTCP from the library dependencies and adding AsyncTCPSock instead: + +```ini +lib_compat_mode = strict +lib_ldf_mode = chain +lib_deps = + ; mathieucarbou/AsyncTCP @ 3.2.14 + https://github.com/mathieucarbou/AsyncTCPSock/archive/refs/tags/v1.0.3-dev.zip + mathieucarbou/ESPAsyncWebServer @ 3.3.23 +lib_ignore = + AsyncTCP + mathieucarbou/AsyncTCP +``` + +## Performance + +Performance of `mathieucarbou/ESPAsyncWebServer @ 3.3.23`: + +```bash +> brew install autocannon +> autocannon -c 10 -w 10 -d 20 http://192.168.4.1 +``` + +With `mathieucarbou/AsyncTCP @ 3.2.14` + +[![](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10.png)](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10.png) + +With `https://github.com/mathieucarbou/AsyncTCPSock/archive/refs/tags/v1.0.3-dev.zip`: + +[![](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10-asynctcpsock.png)](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10-asynctcpsock.png) + +**SSE performance** + +In the example, there is an endpoint `/events` with some comments showing how these metrics are calculated. + +Test is running for 20 seconds with 10 connections. + +``` +// With AsyncTCP, with 10 workers: no message discarded from the queue +// +// Total: 1875 events, 468.75000000000000000000 events / second +// Total: 1870 events, 467.50000000000000000000 events / second +// Total: 1871 events, 467.75000000000000000000 events / second +// Total: 1875 events, 468.75000000000000000000 events / second +// Total: 1871 events, 467.75000000000000000000 events / second +// Total: 1805 events, 451.25000000000000000000 events / second +// Total: 1803 events, 450.75000000000000000000 events / second +// Total: 1873 events, 468.25000000000000000000 events / second +// Total: 1872 events, 468.00000000000000000000 events / second +// Total: 1805 events, 451.25000000000000000000 events / second +// +// With AsyncTCPSock, with 10 workers: no message discarded from the queue +// +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1181 events, 295.25000000000000000000 events / second +// Total: 1182 events, 295.50000000000000000000 events / second +// Total: 1240 events, 310.00000000000000000000 events / second +// Total: 1181 events, 295.25000000000000000000 events / second +// Total: 1181 events, 295.25000000000000000000 events / second +// Total: 1183 events, 295.75000000000000000000 events / second +``` + ## Important recommendations Most of the crashes are caused by improper configuration of the library for the project. @@ -72,7 +166,7 @@ Here are some recommendations to avoid them. 1. Set the running core to be on the same core of your application (usually core 1) `-D CONFIG_ASYNC_TCP_RUNNING_CORE=1` 2. Set the stack size appropriately with `-D CONFIG_ASYNC_TCP_STACK_SIZE=16384`. The default value of `16384` might be too much for your project. - You can look at the [MycilaTaskMonitor](https://oss.carbou.me/MycilaTaskMonitor) project to monitor the stack usage. + You can look at the [MycilaTaskMonitor](https://mathieu.carbou.me/MycilaTaskMonitor) project to monitor the stack usage. 3. You can change **if you know what you are doing** the task priority with `-D CONFIG_ASYNC_TCP_PRIORITY=10`. Default is `10`. 4. You can increase the queue size with `-D CONFIG_ASYNC_TCP_QUEUE_SIZE=128`. @@ -528,7 +622,7 @@ Endpoints which consume JSON can use a special handler to get ready to use JSON #include "ArduinoJson.h" AsyncCallbackJsonWebHandler* handler = new AsyncCallbackJsonWebHandler("/rest/endpoint", [](AsyncWebServerRequest *request, JsonVariant &json) { - JsonObject& jsonObj = json.as(); + JsonObject jsonObj = json.as(); // ... }); server.addHandler(handler); @@ -1186,7 +1280,7 @@ For actual serving the file. ### Param Rewrite With Matching -It is possible to rewrite the request url with parameter matchg. Here is an example with one parameter: +It is possible to rewrite the request url with parameter match. Here is an example with one parameter: Rewrite for example "/radio/{frequence}" -> "/radio?f={frequence}" ```cpp diff --git a/docs/index.md b/docs/index.md index 55efb4b..d47c640 100644 --- a/docs/index.md +++ b/docs/index.md @@ -15,8 +15,9 @@ Supports: WebSocket, SSE, Authentication, Arduino Json 7, File Upload, Static Fi This fork is based on [yubox-node-org/ESPAsyncWebServer](https://github.com/yubox-node-org/ESPAsyncWebServer) and includes all the concurrency fixes. -- [Coordinate and dependencies](#coordinate-and-dependencies) - [Changes in this fork](#changes-in-this-fork) +- [Dependencies](#dependencies) +- [Performance](#performance) - [Important recommendations](#important-recommendations) - [`AsyncWebSocketMessageBuffer` and `makeBuffer()`](#asyncwebsocketmessagebuffer-and-makebuffer) - [How to replace a response](#how-to-replace-a-response) @@ -25,20 +26,6 @@ This fork is based on [yubox-node-org/ESPAsyncWebServer](https://github.com/yubo - [Migration to Middleware to improve performance and memory usage](#migration-to-middleware-to-improve-performance-and-memory-usage) - [Original Documentation](#original-documentation) -## Coordinate and dependencies - -**WARNING** The library name was changed from `ESP Async WebServer` to `ESPAsyncWebServer` as per the Arduino Lint recommendations. - -``` -mathieucarbou/ESPAsyncWebServer @ 3.3.7 -``` - -Dependency: - -- **ESP32**: `mathieucarbou/AsyncTCP @ 3.2.5` (Arduino IDE: [https://github.com/mathieucarbou/AsyncTCP#v3.2.5](https://github.com/mathieucarbou/AsyncTCP/releases)) -- **ESP8266**: `esphome/ESPAsyncTCP-esphome @ 2.0.0` (Arduino IDE: [https://github.com/mathieucarbou/esphome-ESPAsyncTCP#v2.0.0](https://github.com/mathieucarbou/esphome-ESPAsyncTCP/releases/tag/v2.0.0)) -- **RP2040**: `khoih-prog/AsyncTCP_RP2040W @ 1.2.0` (Arduino IDE: [https://github.com/khoih-prog/AsyncTCP_RP2040W#v1.2.0](https://github.com/khoih-prog/AsyncTCP_RP2040W/releases/tag/v1.2.0)) - ## Changes in this fork - (bug) A lot of bug fixes @@ -55,6 +42,7 @@ Dependency: - (feat) **Resumable download** support using HEAD and bytes range - (feat) `StreamConcat` example to show how to stream multiple files in one response - (feat) Removed ESPIDF Editor (this is not the role of a web server library to do that - get the source files from the original repos if required) +- (perf) [AsyncTCPSock](https://github.com/mathieucarbou/AsyncTCPSock) support: AsyncTCP can be ignored and AsyncTCPSock used instead - (perf) `char*` overloads to avoid using `String` - (perf) `DEFAULT_MAX_WS_CLIENTS` to change the number of allows WebSocket clients and use `cleanupClients()` to help cleanup resources about dead clients - (perf) `setCloseClientOnQueueFull(bool)` which can be set on a client to either close the connection or discard messages but not close the connection when the queue is full @@ -64,6 +52,112 @@ Dependency: - (perf) Lot of code cleanup and optimizations - (perf) Performance improvements in terms of memory, speed and size +--- + +## WARNING: Important notes about future version 4.x + +This ESPAsyncWebServer fork is now at version 3.x. + +Next version 4.x will: + +1. Drop support for ESP8266, which goes EOL in a few years. All ESP8266 boards can be replaced by equivalent ESP32 boards. +2. Drop support for Arduino 2.x and ESP-IDF 4.x. The library will be compatible with Arduino 3.x and ESP-IDF 5.x. +3. Drop support for ArduinoJson 5.x and 6.x. The library will be compatible with ArduinoJson 7.x. + +So if you need one of these feature, you will have to stick with 3.x or another fork. + +## Dependencies + +**WARNING** The library name was changed from `ESP Async WebServer` to `ESPAsyncWebServer` as per the Arduino Lint recommendations, but its name had to stay `ESP Async WebServer` in Arduino Registry. + +**PlatformIO / pioarduino:** + +```ini +lib_compat_mode = strict +lib_ldf_mode = chain +lib_deps = mathieucarbou/ESPAsyncWebServer @ 3.3.23 +``` + +**Dependencies:** + +- **ESP32 with AsyncTCP**: `mathieucarbou/AsyncTCP @ 3.2.14` + Arduino IDE: [https://github.com/mathieucarbou/AsyncTCP#v3.2.14](https://github.com/mathieucarbou/AsyncTCP/releases) + +- **ESP32 with AsyncTCPSock**: `https://github.com/mathieucarbou/AsyncTCPSock/archive/refs/tags/v1.0.3-dev.zip` + +- **ESP8266**: `esphome/ESPAsyncTCP-esphome @ 2.0.0` + Arduino IDE: [https://github.com/mathieucarbou/esphome-ESPAsyncTCP#v2.0.0](https://github.com/mathieucarbou/esphome-ESPAsyncTCP/releases/tag/v2.0.0) + +- **RP2040**: `khoih-prog/AsyncTCP_RP2040W @ 1.2.0` + Arduino IDE: [https://github.com/khoih-prog/AsyncTCP_RP2040W#v1.2.0](https://github.com/khoih-prog/AsyncTCP_RP2040W/releases/tag/v1.2.0) + +**AsyncTCPSock** + +AsyncTCPSock can be used instead of AsyncTCP by excluding AsyncTCP from the library dependencies and adding AsyncTCPSock instead: + +```ini +lib_compat_mode = strict +lib_ldf_mode = chain +lib_deps = + ; mathieucarbou/AsyncTCP @ 3.2.14 + https://github.com/mathieucarbou/AsyncTCPSock/archive/refs/tags/v1.0.3-dev.zip + mathieucarbou/ESPAsyncWebServer @ 3.3.23 +lib_ignore = + AsyncTCP + mathieucarbou/AsyncTCP +``` + +## Performance + +Performance of `mathieucarbou/ESPAsyncWebServer @ 3.3.23`: + +```bash +> brew install autocannon +> autocannon -c 10 -w 10 -d 20 http://192.168.4.1 +``` + +With `mathieucarbou/AsyncTCP @ 3.2.14` + +[![](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10.png)](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10.png) + +With `https://github.com/mathieucarbou/AsyncTCPSock/archive/refs/tags/v1.0.3-dev.zip`: + +[![](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10-asynctcpsock.png)](https://mathieu.carbou.me/ESPAsyncWebServer/perf-c10-asynctcpsock.png) + +**SSE performance** + +In the example, there is an endpoint `/events` with some comments showing how these metrics are calculated. + +Test is running for 20 seconds with 10 connections. + +``` +// With AsyncTCP, with 10 workers: no message discarded from the queue +// +// Total: 1875 events, 468.75000000000000000000 events / second +// Total: 1870 events, 467.50000000000000000000 events / second +// Total: 1871 events, 467.75000000000000000000 events / second +// Total: 1875 events, 468.75000000000000000000 events / second +// Total: 1871 events, 467.75000000000000000000 events / second +// Total: 1805 events, 451.25000000000000000000 events / second +// Total: 1803 events, 450.75000000000000000000 events / second +// Total: 1873 events, 468.25000000000000000000 events / second +// Total: 1872 events, 468.00000000000000000000 events / second +// Total: 1805 events, 451.25000000000000000000 events / second +// +// With AsyncTCPSock, with 10 workers: no message discarded from the queue +// +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1242 events, 310.50000000000000000000 events / second +// Total: 1181 events, 295.25000000000000000000 events / second +// Total: 1182 events, 295.50000000000000000000 events / second +// Total: 1240 events, 310.00000000000000000000 events / second +// Total: 1181 events, 295.25000000000000000000 events / second +// Total: 1181 events, 295.25000000000000000000 events / second +// Total: 1183 events, 295.75000000000000000000 events / second +``` + ## Important recommendations Most of the crashes are caused by improper configuration of the library for the project. @@ -72,7 +166,7 @@ Here are some recommendations to avoid them. 1. Set the running core to be on the same core of your application (usually core 1) `-D CONFIG_ASYNC_TCP_RUNNING_CORE=1` 2. Set the stack size appropriately with `-D CONFIG_ASYNC_TCP_STACK_SIZE=16384`. The default value of `16384` might be too much for your project. - You can look at the [MycilaTaskMonitor](https://oss.carbou.me/MycilaTaskMonitor) project to monitor the stack usage. + You can look at the [MycilaTaskMonitor](https://mathieu.carbou.me/MycilaTaskMonitor) project to monitor the stack usage. 3. You can change **if you know what you are doing** the task priority with `-D CONFIG_ASYNC_TCP_PRIORITY=10`. Default is `10`. 4. You can increase the queue size with `-D CONFIG_ASYNC_TCP_QUEUE_SIZE=128`. @@ -1186,7 +1280,7 @@ For actual serving the file. ### Param Rewrite With Matching -It is possible to rewrite the request url with parameter matchg. Here is an example with one parameter: +It is possible to rewrite the request url with parameter match. Here is an example with one parameter: Rewrite for example "/radio/{frequence}" -> "/radio?f={frequence}" ```cpp diff --git a/docs/perf-c10-asynctcpsock.png b/docs/perf-c10-asynctcpsock.png new file mode 100644 index 0000000000000000000000000000000000000000..b1d4d7aa615b9069124878e295750747b53b1ada GIT binary patch literal 317493 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�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

C!JF|6 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%0A%o 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�&;2Mh13yMPaPwcIvEhzxcDfE{d=GuMc9 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 -#include - -void setup() { - Serial.begin(115200); - delay(2000); - - const char* data = "Hello World"; - - { - uint8_t md5[16]; - mbedtls_md5_context _ctx; - mbedtls_md5_init(&_ctx); - mbedtls_md5_starts(&_ctx); - mbedtls_md5_update(&_ctx, (const unsigned char*)data, strlen(data)); - mbedtls_md5_finish(&_ctx, md5); - char output[33]; - for (int i = 0; i < 16; i++) { - sprintf_P(output + (i * 2), PSTR("%02x"), md5[i]); - } - Serial.println(String(output)); - } - - { - MD5Builder md5; - md5.begin(); - md5.add(data, strlen(data); - md5.calculate(); - char output[33]; - md5.getChars(output); - Serial.println(String(output)); - } -} - -void loop() { -} diff --git a/examples/Filters/Filters.ino b/examples/Filters/Filters.ino index de5129a..2335364 100644 --- a/examples/Filters/Filters.ino +++ b/examples/Filters/Filters.ino @@ -18,14 +18,11 @@ AsyncWebServer server(80); class CaptiveRequestHandler : public AsyncWebHandler { public: - CaptiveRequestHandler() {} - virtual ~CaptiveRequestHandler() {} - - bool canHandle(__unused AsyncWebServerRequest* request) { + bool canHandle(__unused AsyncWebServerRequest* request) const override { return true; } - void handleRequest(AsyncWebServerRequest* request) { + void handleRequest(AsyncWebServerRequest* request) override { AsyncResponseStream* response = request->beginResponseStream("text/html"); response->print("Captive Portal"); response->print("

This is out captive portal front page.

"); diff --git a/examples/Issue162/Issue162.ino b/examples/Issue162/Issue162.ino new file mode 100644 index 0000000..9f7312f --- /dev/null +++ b/examples/Issue162/Issue162.ino @@ -0,0 +1,84 @@ +/** + * + * Connect to AP and run in bash: + * + * > while true; do echo "PING"; sleep 0.1; done | websocat ws://192.168.4.1/ws + * + */ +#include +#ifdef ESP8266 + #include +#endif +#ifdef ESP32 + #include +#endif +#include + +#include +AsyncWebServer server(80); +AsyncWebSocket ws("/ws"); + +void onWsEvent(AsyncWebSocket* server, AsyncWebSocketClient* client, AwsEventType type, void* arg, uint8_t* data, size_t len) { + if (type == WS_EVT_CONNECT) { + Serial.printf("Client #%" PRIu32 " connected.\n", client->id()); + } else if (type == WS_EVT_DISCONNECT) { + Serial.printf("Client #%" PRIu32 " disconnected.\n", client->id()); + } else if (type == WS_EVT_ERROR) { + Serial.printf("Client #%" PRIu32 " error.\n", client->id()); + } else if (type == WS_EVT_DATA) { + Serial.printf("Client #%" PRIu32 " len: %u\n", client->id(), len); + } else if (type == WS_EVT_PONG) { + Serial.printf("Client #%" PRIu32 " pong.\n", client->id()); + } else if (type == WS_EVT_PING) { + Serial.printf("Client #%" PRIu32 " ping.\n", client->id()); + } +} + +void setup() { + Serial.begin(115200); + + WiFi.mode(WIFI_AP); + WiFi.softAP("esp-captive"); + + ws.onEvent(onWsEvent); + server.addHandler(&ws); + + server.on("/close_all_ws_clients", HTTP_GET | HTTP_POST, [](AsyncWebServerRequest* request) { + Serial.println("Closing all WebSocket clients..."); + ws.closeAll(); + request->send(200, "application/json", "{\"status\":\"all clients closed\"}"); + }); + + server.on("/", HTTP_GET, [](AsyncWebServerRequest* request) { + request->send(200, "text/html", R"rawliteral( + + + + + +

+ + + )rawliteral"); + }); + + server.begin(); +} + +void loop() { + vTaskDelete(NULL); +} diff --git a/examples/Issue85/Issue85.ino b/examples/Issue85/Issue85.ino new file mode 100644 index 0000000..fa2aa55 --- /dev/null +++ b/examples/Issue85/Issue85.ino @@ -0,0 +1,127 @@ +/** + * + * Connect to AP and run in bash: + * + * > while true; do echo "PING"; sleep 0.1; done | websocat ws://192.168.4.1/ws + * + */ +#include +#ifdef ESP8266 + #include +#endif +#ifdef ESP32 + #include +#endif +#include + +#include + +size_t msgCount = 0; +size_t window = 100; +std::list times; + +void connect_wifi() { + WiFi.mode(WIFI_AP); + WiFi.softAP("esp-captive"); + + // Serial.print("Connecting"); + // while (WiFi.status() != WL_CONNECTED) { + // delay(500); + // Serial.print("."); + // } + // Serial.println(); + + // Serial.print("Connected, IP address: "); + // Serial.println(WiFi.localIP()); +} + +void notFound(AsyncWebServerRequest* request) { + request->send(404, "text/plain", "Not found"); +} + +AsyncWebServer server(80); +AsyncWebSocket ws("/ws"); + +// initial stack +char* stack_start; + +void printStackSize() { + char stack; + Serial.print(F("stack size ")); + Serial.print(stack_start - &stack); + Serial.print(F(" | Heap free:")); + Serial.print(ESP.getFreeHeap()); +#ifdef ESP8266 + Serial.print(F(" frag:")); + Serial.print(ESP.getHeapFragmentation()); + Serial.print(F(" maxFreeBlock:")); + Serial.print(ESP.getMaxFreeBlockSize()); +#endif + Serial.println(); +} + +void onWsEventEmpty(AsyncWebSocket* server, AsyncWebSocketClient* client, AwsEventType type, void* arg, uint8_t* data, size_t len) { + msgCount++; + Serial.printf("count: %d\n", msgCount); + + times.push_back(millis()); + while (times.size() > window) + times.pop_front(); + if (times.size() == window) + Serial.printf("%f req/s\n", 1000.0 * window / (times.back() - times.front())); + + printStackSize(); + + client->text("PONG"); +} + +void serve_upload(AsyncWebServerRequest* request, const String& filename, size_t index, uint8_t* data, size_t len, bool final) { + Serial.print("> onUpload "); + Serial.print("index: "); + Serial.print(index); + Serial.print(" len:"); + Serial.print(len); + Serial.print(" final:"); + Serial.print(final); + Serial.println(); +} + +void setup() { + char stack; + stack_start = &stack; + + Serial.begin(115200); + Serial.println("\n\n\nStart"); + Serial.printf("stack_start: %p\n", stack_start); + + connect_wifi(); + + server.onNotFound(notFound); + + ws.onEvent(onWsEventEmpty); + server.addHandler(&ws); + + server.on("/upload", HTTP_POST, [](AsyncWebServerRequest* request) { request->send(200); }, serve_upload); + + server.begin(); + Serial.println("Server started"); +} + +String msg = ""; +uint32_t count = 0; +void loop() { + // ws.cleanupClients(); + // count += 1; + // // Concatenate some string, and clear it after some time + // static unsigned long millis_string = millis(); + // if (millis() - millis_string > 1) { + // millis_string += 100; + // if (count % 100 == 0) { + // // printStackSize(); + // // Serial.print(msg); + // msg = String(); + // } else { + // msg += 'T'; + // } + // } +} \ No newline at end of file diff --git a/examples/SimpleServer/SimpleServer.ino b/examples/SimpleServer/SimpleServer.ino index 899c77d..6d2863f 100644 --- a/examples/SimpleServer/SimpleServer.ino +++ b/examples/SimpleServer/SimpleServer.ino @@ -19,7 +19,7 @@ #include -#if ASYNC_JSON_SUPPORT == 1 +#if __has_include("ArduinoJson.h") #include #include #include @@ -27,6 +27,80 @@ #include +const char* htmlContent PROGMEM = R"( + + + + Sample HTML + + +

Hello, World!

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod, purus a euismod + rhoncus, urna ipsum cursus massa, eu dictum tellus justo ac justo. Quisque ullamcorper + arcu nec tortor ullamcorper, vel fermentum justo fermentum. Vivamus sed velit ut elit + accumsan congue ut ut enim. Ut eu justo eu lacus varius gravida ut a tellus. Nulla facilisi. + Integer auctor consectetur ultricies. Fusce feugiat, mi sit amet bibendum viverra, orci leo + dapibus elit, id varius sem dui id lacus.

+ + +)"; + +const size_t htmlContentLength = strlen_P(htmlContent); + +const char* staticContent PROGMEM = R"( + + + + Sample HTML + + +

Hello, %IP%

+ + +)"; + AsyncWebServer server(80); AsyncEventSource events("/events"); AsyncWebSocket ws("/ws"); @@ -111,11 +185,14 @@ void notFound(AsyncWebServerRequest* request) { request->send(404, "text/plain", "Not found"); } -#if ASYNC_JSON_SUPPORT == 1 +#if __has_include("ArduinoJson.h") AsyncCallbackJsonWebHandler* jsonHandler = new AsyncCallbackJsonWebHandler("/json2"); AsyncCallbackMessagePackWebHandler* msgPackHandler = new AsyncCallbackMessagePackWebHandler("/msgpack2"); #endif +static const char characters[] = "0123456789ABCDEF"; +static size_t charactersIndex = 0; + void setup() { Serial.begin(115200); @@ -134,6 +211,32 @@ void setup() { WiFi.softAP("esp-captive"); #endif +#ifdef ESP32 + LittleFS.begin(true); +#else + LittleFS.begin(); +#endif + + { + File f = LittleFS.open("/index.txt", "w"); + if (f) { + for (size_t c = 0; c < sizeof(characters); c++) { + for (size_t i = 0; i < 1024; i++) { + f.print(characters[c]); + } + } + f.close(); + } + } + + { + File f = LittleFS.open("/index.html", "w"); + if (f) { + f.print(staticContent); + f.close(); + } + } + // curl -v -X GET http://192.168.4.1/handler-not-sending-response server.on("/handler-not-sending-response", HTTP_GET, [](AsyncWebServerRequest* request) { // handler forgot to send a response to the client => 501 Not Implemented @@ -215,16 +318,18 @@ void setup() { headerFree.keep("X-Keep-Me"); headerFree.keep("host"); - // global middleware - server.addMiddleware(&requestLogger); - server.addMiddlewares({&rateLimit, &cors, &headerFilter}); - cors.setOrigin("http://192.168.4.1"); cors.setMethods("POST, GET, OPTIONS, DELETE"); cors.setHeaders("X-Custom-Header"); cors.setAllowCredentials(false); cors.setMaxAge(600); +#ifndef PERF_TEST + // global middleware + server.addMiddleware(&requestLogger); + server.addMiddlewares({&rateLimit, &cors, &headerFilter}); +#endif + // Test CORS preflight request // curl -v -X OPTIONS -H "origin: http://192.168.4.1" http://192.168.4.1/middleware/cors server.on("/middleware/cors", HTTP_GET, [](AsyncWebServerRequest* request) { @@ -299,12 +404,103 @@ void setup() { request->redirect("/"); }); + // PERF TEST: + // > brew install autocannon + // > autocannon -c 10 -w 10 -d 20 http://192.168.4.1 server.on("/", HTTP_GET, [](AsyncWebServerRequest* request) { - request->send(200, "text/plain", "Hello, world"); + request->send(200, "text/html", htmlContent); }); - server.on("/file", HTTP_GET, [](AsyncWebServerRequest* request) { - request->send(LittleFS, "/index.html"); + // curl -v -X GET http://192.168.4.1/index.txt + server.serveStatic("/index.txt", LittleFS, "/index.txt"); + + // curl -v -X GET http://192.168.4.1/index-private.txt + server.serveStatic("/index-private.txt", LittleFS, "/index.txt").setAuthentication("admin", "admin"); + + // ServeStatic static is used to serve static output which never changes over time. + // This special endpoints automatyically adds caching headers. + // If a template processor is used, it must enure that the outputed content will always be the ame over time and never changes. + // Otherwise, do not use serveStatic. + // Example below: IP never changes. + // curl -v -X GET http://192.168.4.1/index-static.html + server.serveStatic("/index-static.html", LittleFS, "/index.html").setTemplateProcessor([](const String& var) -> String { + if (var == "IP") { + // for CI, commented out since H2 board doesn ot support WiFi + // return WiFi.localIP().toString(); + // return WiFi.softAPIP().toString(); + return "127.0.0..1"; + } + return emptyString; + }); + + // to serve a template with dynamic content (output changes over time), use normal + // Example below: content changes over tinme do not use serveStatic. + // curl -v -X GET http://192.168.4.1/index-dynamic.html + server.on("/index-dynamic.html", HTTP_GET, [](AsyncWebServerRequest* request) { + request->send(LittleFS, "/index.html", "text/html", false, [](const String& var) -> String { + if (var == "IP") + return String(random(0, 1000)); + return emptyString; + }); + }); + + // Issue #14: assert failed: tcp_update_rcv_ann_wnd (needs help to test fix) + // > curl -v http://192.168.4.1/issue-14 + pinMode(4, OUTPUT); + server.on("/issue-14", HTTP_GET, [](AsyncWebServerRequest* request) { + digitalWrite(4, HIGH); + request->send(LittleFS, "/index.txt", "text/pain"); + delay(500); + digitalWrite(4, LOW); + }); + + /* + Chunked encoding test: sends 16k of characters. + ❯ curl -N -v -X GET -H "origin: http://192.168.4.1" http://192.168.4.1/chunk + */ + server.on("/chunk", HTTP_HEAD | HTTP_GET, [](AsyncWebServerRequest* request) { + AsyncWebServerResponse* response = request->beginChunkedResponse("text/html", [](uint8_t* buffer, size_t maxLen, size_t index) -> size_t { + if (index >= 16384) + return 0; + memset(buffer, characters[charactersIndex], maxLen); + charactersIndex = (charactersIndex + 1) % sizeof(characters); + return maxLen; + }); + request->send(response); + }); + + // curl -N -v -X GET http://192.168.4.1/chunked.html --output - + // curl -N -v -X GET -H "if-none-match: 4272" http://192.168.4.1/chunked.html --output - + server.on("/chunked.html", HTTP_GET, [](AsyncWebServerRequest* request) { + String len = String(htmlContentLength); + + if (request->header(asyncsrv::T_INM) == len) { + request->send(304); + return; + } + + AsyncWebServerResponse* response = request->beginChunkedResponse("text/html", [](uint8_t* buffer, size_t maxLen, size_t index) -> size_t { + Serial.printf("%u / %u\n", index, htmlContentLength); + + // finished ? + if (htmlContentLength <= index) { + Serial.println("finished"); + return 0; + } + + // serve a maximum of 1024 or maxLen bytes of the remaining content + const int chunkSize = min((size_t)1024, min(maxLen, htmlContentLength - index)); + Serial.printf("sending: %u\n", chunkSize); + + memcpy(buffer, htmlContent + index, chunkSize); + + return chunkSize; + }); + + response->addHeader(asyncsrv::T_Cache_Control, "public,max-age=60"); + response->addHeader(asyncsrv::T_ETag, len); + + request->send(response); }); /* @@ -353,14 +549,12 @@ void setup() { request->send(200, "text/plain", "Hello, POST: " + message); }); -#if ASYNC_JSON_SUPPORT == 1 +#if __has_include("ArduinoJson.h") // JSON - // receives JSON and sends JSON - jsonHandler->onRequest([](AsyncWebServerRequest* request, JsonVariant& json) { - // JsonObject jsonObj = json.as(); - // ... - + // sends JSON + // curl -v -X GET http://192.168.4.1/json1 + server.on("/json1", HTTP_GET, [](AsyncWebServerRequest* request) { AsyncJsonResponse* response = new AsyncJsonResponse(); JsonObject root = response->getRoot().to(); root["hello"] = "world"; @@ -368,11 +562,24 @@ void setup() { request->send(response); }); - // sends JSON - server.on("/json1", HTTP_GET, [](AsyncWebServerRequest* request) { + // curl -v -X GET http://192.168.4.1/json2 + server.on("/json2", HTTP_GET, [](AsyncWebServerRequest* request) { + AsyncResponseStream* response = request->beginResponseStream("application/json"); + JsonDocument doc; + JsonObject root = doc.to(); + root["foo"] = "bar"; + serializeJson(root, *response); + request->send(response); + }); + + // curl -v -X POST -H 'Content-Type: application/json' -d '{"name":"You"}' http://192.168.4.1/json2 + // curl -v -X PUT -H 'Content-Type: application/json' -d '{"name":"You"}' http://192.168.4.1/json2 + jsonHandler->setMethod(HTTP_POST | HTTP_PUT); + jsonHandler->onRequest([](AsyncWebServerRequest* request, JsonVariant& json) { + serializeJson(json, Serial); AsyncJsonResponse* response = new AsyncJsonResponse(); JsonObject root = response->getRoot().to(); - root["hello"] = "world"; + root["hello"] = json.as()["name"]; response->setLength(); request->send(response); }); @@ -436,10 +643,69 @@ void setup() { } }); + // SSS endpoints + // sends a message every 10 ms + // + // go to http://192.168.4.1/sse + // > curl -v -N -H "Accept: text/event-stream" http://192.168.4.1/events + // + // some perf tests: + // launch 16 concurrent workers for 30 seconds + // > for i in {1..16}; do ( count=$(gtimeout 30 curl -s -N -H "Accept: text/event-stream" http://192.168.4.1/events 2>&1 | grep -c "^data:"); echo "Total: $count events, $(echo "$count / 4" | bc -l) events / second" ) & done; + // + // With AsyncTCP, with 16 workers: a lot of Too many messages queued: deleting message + // + // Total: 119 events, 29.75000000000000000000 events / second + // Total: 727 events, 181.75000000000000000000 events / second + // Total: 1386 events, 346.50000000000000000000 events / second + // Total: 1385 events, 346.25000000000000000000 events / second + // Total: 1276 events, 319.00000000000000000000 events / second + // Total: 1411 events, 352.75000000000000000000 events / second + // Total: 1276 events, 319.00000000000000000000 events / second + // Total: 1333 events, 333.25000000000000000000 events / second + // Total: 1250 events, 312.50000000000000000000 events / second + // Total: 1275 events, 318.75000000000000000000 events / second + // Total: 1271 events, 317.75000000000000000000 events / second + // Total: 1271 events, 317.75000000000000000000 events / second + // Total: 1254 events, 313.50000000000000000000 events / second + // Total: 1251 events, 312.75000000000000000000 events / second + // Total: 1254 events, 313.50000000000000000000 events / second + // Total: 1262 events, 315.50000000000000000000 events / second + // + // With AsyncTCP, with 10 workers: + // + // Total: 1875 events, 468.75000000000000000000 events / second + // Total: 1870 events, 467.50000000000000000000 events / second + // Total: 1871 events, 467.75000000000000000000 events / second + // Total: 1875 events, 468.75000000000000000000 events / second + // Total: 1871 events, 467.75000000000000000000 events / second + // Total: 1805 events, 451.25000000000000000000 events / second + // Total: 1803 events, 450.75000000000000000000 events / second + // Total: 1873 events, 468.25000000000000000000 events / second + // Total: 1872 events, 468.00000000000000000000 events / second + // Total: 1805 events, 451.25000000000000000000 events / second + // + // With AsyncTCPSock, with 16 workers: ESP32 CRASH !!! + // + // With AsyncTCPSock, with 10 workers: + // + // Total: 1242 events, 310.50000000000000000000 events / second + // Total: 1242 events, 310.50000000000000000000 events / second + // Total: 1242 events, 310.50000000000000000000 events / second + // Total: 1242 events, 310.50000000000000000000 events / second + // Total: 1181 events, 295.25000000000000000000 events / second + // Total: 1182 events, 295.50000000000000000000 events / second + // Total: 1240 events, 310.00000000000000000000 events / second + // Total: 1181 events, 295.25000000000000000000 events / second + // Total: 1181 events, 295.25000000000000000000 events / second + // Total: 1183 events, 295.75000000000000000000 events / second + // server.addHandler(&events); + + // Run: websocat ws://192.168.4.1/ws server.addHandler(&ws); -#if ASYNC_JSON_SUPPORT == 1 +#if __has_include("ArduinoJson.h") server.addHandler(jsonHandler); server.addHandler(msgPackHandler); #endif @@ -450,7 +716,7 @@ void setup() { } uint32_t lastSSE = 0; -uint32_t deltaSSE = 5; +uint32_t deltaSSE = 10; uint32_t lastWS = 0; uint32_t deltaWS = 100; @@ -463,9 +729,8 @@ void loop() { } if (now - lastWS >= deltaWS) { ws.printfAll("kp%.4f", (10.0 / 3.0)); - // ws.getClients for (auto& client : ws.getClients()) { - client.text("kp%.4f", (10.0 / 3.0)); + client.printf("kp%.4f", (10.0 / 3.0)); } lastWS = millis(); } diff --git a/examples/StreamFiles/StreamFiles.ino b/examples/StreamFiles/StreamFiles.ino index 508298d..a0d6b9f 100644 --- a/examples/StreamFiles/StreamFiles.ino +++ b/examples/StreamFiles/StreamFiles.ino @@ -10,11 +10,13 @@ #include #include #endif -#include "StreamConcat.h" -#include "StreamString.h" + +#include #include #include +#include "StreamConcat.h" + DNSServer dnsServer; AsyncWebServer server(80); diff --git a/examples/StreamFiles/StreamString.h b/examples/StreamFiles/StreamString.h deleted file mode 100644 index a6e0655..0000000 --- a/examples/StreamFiles/StreamString.h +++ /dev/null @@ -1,40 +0,0 @@ -#pragma once - -#include - -class StreamString : public Stream { - public: - size_t write(const uint8_t* p, size_t n) override { return _buffer.concat(reinterpret_cast(p), n) ? n : 0; } - size_t write(uint8_t c) override { return _buffer.concat(static_cast(c)) ? 1 : 0; } - void flush() override {} - - int available() override { return static_cast(_buffer.length()); } - - int read() override { - if (_buffer.length() == 0) - return -1; - char c = _buffer[0]; - _buffer.remove(0, 1); - return c; - } - -#if defined(TARGET_RP2040) - size_t readBytes(char* buffer, size_t length) { -#else - size_t readBytes(char* buffer, size_t length) override { -#endif - if (length > _buffer.length()) - length = _buffer.length(); - // Don't use _str.ToCharArray() because it inserts a terminator - memcpy(buffer, _buffer.c_str(), length); - _buffer.remove(0, static_cast(length)); - return length; - } - - int peek() override { return _buffer.length() > 0 ? _buffer[0] : -1; } - - const String& buffer() const { return _buffer; } - - private: - String _buffer; -}; diff --git a/examples/issues/Issue14/Issue14.ino b/examples/issues/Issue14/Issue14.ino deleted file mode 100644 index f62084a..0000000 --- a/examples/issues/Issue14/Issue14.ino +++ /dev/null @@ -1,107 +0,0 @@ -#include -#ifdef ESP32 - #include - #include -#elif defined(ESP8266) - #include - #include -#elif defined(TARGET_RP2040) - #include - #include -#endif - -#include "ESPAsyncWebServer.h" - -const char appWebPage[] PROGMEM = R"rawliteral( - - - - -)rawliteral"; - -AsyncWebServer server(80); -AsyncEventSource events("/events"); - -const uint32_t interval = 1000; -const int button1Pin = 4; - -uint32_t lastSend = 0; - -void prepareJson(String& buffer) { - buffer.reserve(512); - buffer.concat("{\"button1\":"); - buffer.concat(digitalRead(button1Pin) == LOW); - buffer.concat(",\"1234567890abcdefghij1234567890abcdefghij1234567890abcdefghij1234567890abcdefghij1234567890abcdefghij1234567890abcdefghij\":"); - buffer.concat(random(0, 999999999)); - buffer.concat("}"); -} - -void setup() { - Serial.begin(115200); -#if ARDUINO_USB_CDC_ON_BOOT - Serial.setTxTimeoutMs(0); - delay(100); -#else - while (!Serial) - yield(); -#endif - - randomSeed(micros()); - - pinMode(button1Pin, OUTPUT); - digitalWrite(button1Pin, HIGH); - - WiFi.softAP("esp-captive"); - - server.on("/", HTTP_GET, [](AsyncWebServerRequest* request) { - request->send(200, "text/html", appWebPage); - }); - - server.on("/button1", HTTP_GET, [](AsyncWebServerRequest* request) { - request->send(200, "text/plain", "OK"); - digitalWrite(button1Pin, digitalRead(button1Pin) == LOW ? HIGH : LOW); - - String buffer; - prepareJson(buffer); - ESP_LOGI("async_tcp", "Sending from handler..."); - events.send(buffer.c_str(), "state", millis()); - ESP_LOGI("async_tcp", "Sent from handler!"); - }); - - events.onConnect([](AsyncEventSourceClient* client) { - String buffer; - prepareJson(buffer); - ESP_LOGI("async_tcp", "Sending from onConnect..."); - client->send(buffer.c_str(), "state", millis(), 5000); - ESP_LOGI("async_tcp", "Sent from onConnect!"); - }); - - server.addHandler(&events); - DefaultHeaders::Instance().addHeader("Access-Control-Allow-Origin", "*"); - - server.begin(); -} - -void loop() { - if (millis() - lastSend >= interval) { - String buffer; - prepareJson(buffer); - ESP_LOGI("loop", "Sending..."); - events.send(buffer.c_str(), "state", millis()); - ESP_LOGI("loop", "Sent!"); - lastSend = millis(); - } -} diff --git a/library.json_ b/library.json_ index d228842..f7e219c 100644 --- a/library.json_ +++ b/library.json_ @@ -1,6 +1,6 @@ { "name": "ESPAsyncWebServer", - "version": "3.3.7", + "version": "3.3.23", "description": "Asynchronous HTTP and WebSocket Server Library for ESP32, ESP8266 and RP2040. Supports: WebSocket, SSE, Authentication, Arduino Json 7, File Upload, Static File serving, URL Rewrite, URL Redirect, etc.", "keywords": "http,async,websocket,webserver", "homepage": "https://github.com/mathieucarbou/ESPAsyncWebServer", @@ -28,7 +28,7 @@ { "owner": "mathieucarbou", "name": "AsyncTCP", - "version": "^3.2.5", + "version": "^3.2.14", "platforms": "espressif32" }, { diff --git a/library.properties b/library.properties index bb170b9..865e911 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,6 @@ -name=ESPAsyncWebServer -version=3.3.7 +name=ESP Async WebServer +includes=ESPAsyncWebServer.h +version=3.3.23 author=Me-No-Dev maintainer=Mathieu Carbou sentence=Asynchronous HTTP and WebSocket Server Library for ESP32, ESP8266 and RP2040 @@ -7,4 +8,4 @@ paragraph=Supports: WebSocket, SSE, Authentication, Arduino Json 7, File Upload, category=Other url=https://github.com/mathieucarbou/ESPAsyncWebServer architectures=* -license=LGPL-3.0 +license=LGPL-3.0 \ No newline at end of file diff --git a/partitions-4MB.csv b/partitions-4MB.csv new file mode 100644 index 0000000..75efc35 --- /dev/null +++ b/partitions-4MB.csv @@ -0,0 +1,7 @@ +# Name ,Type ,SubType ,Offset ,Size ,Flags +nvs ,data ,nvs ,36K ,20K , +otadata ,data ,ota ,56K ,8K , +app0 ,app ,ota_0 ,64K ,1856K , +app1 ,app ,ota_1 ,1920K ,1856K , +spiffs ,data ,spiffs ,3776K ,256K , +coredump ,data ,coredump ,4032K ,64K , diff --git a/platformio.ini b/platformio.ini index b0a28f1..328f427 100644 --- a/platformio.ini +++ b/platformio.ini @@ -1,16 +1,17 @@ [platformio] -default_envs = arduino-2, arduino-3, arduino-310rc1, esp8266, raspberrypi +default_envs = arduino-2, arduino-3, arduino-310, esp8266, raspberrypi lib_dir = . ; src_dir = examples/CaptivePortal -src_dir = examples/SimpleServer +; src_dir = examples/SimpleServer ; src_dir = examples/StreamFiles ; src_dir = examples/Filters -; src_dir = examples/Draft -; src_dir = examples/issues/Issue14 +; src_dir = examples/Issue85 +src_dir = examples/Issue162 [env] framework = arduino build_flags = + -Og -Wall -Wextra -Wno-unused-parameter -D CONFIG_ARDUHAL_LOG_COLORS @@ -23,12 +24,17 @@ build_flags = upload_protocol = esptool monitor_speed = 115200 monitor_filters = esp32_exception_decoder, log2file +; monitor_filters = esp8266_exception_decoder, log2file +lib_compat_mode = strict +lib_ldf_mode = chain lib_deps = ; bblanchon/ArduinoJson @ 5.13.4 ; bblanchon/ArduinoJson @ 6.21.5 - bblanchon/ArduinoJson @ 7.2.0 - mathieucarbou/AsyncTCP @ 3.2.5 + bblanchon/ArduinoJson @ 7.2.1 + mathieucarbou/AsyncTCP @ 3.2.14 board = esp32dev +board_build.partitions = partitions-4MB.csv +board_build.filesystem = littlefs [env:arduino-2] platform = espressif32@6.9.0 @@ -43,33 +49,42 @@ platform = https://github.com/pioarduino/platform-espressif32/releases/download/ ; board = esp32-s3-devkitc-1 ; board = esp32-c6-devkitc-1 lib_deps = - mathieucarbou/AsyncTCP @ 3.2.5 + mathieucarbou/AsyncTCP @ 3.2.14 -[env:arduino-310rc1] -platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc1/platform-espressif32.zip +[env:arduino-310] +platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc3/platform-espressif32.zip ; board = esp32-s3-devkitc-1 ; board = esp32-c6-devkitc-1 +; board = esp32-h2-devkitm-1 + +[env:perf-test-AsyncTCP] +platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc3/platform-espressif32.zip +build_flags = ${env.build_flags} + -D PERF_TEST=1 + +[env:perf-test-AsyncTCPSock] +platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc3/platform-espressif32.zip +lib_deps = + https://github.com/mathieucarbou/AsyncTCPSock/archive/refs/tags/v1.0.3-dev.zip +build_flags = ${env.build_flags} + -D PERF_TEST=1 [env:esp8266] platform = espressif8266 -board = huzzah -; board = d1_mini +; board = huzzah +board = d1_mini lib_deps = - bblanchon/ArduinoJson @ 7.2.0 + bblanchon/ArduinoJson @ 7.2.1 esphome/ESPAsyncTCP-esphome @ 2.0.0 -; PlatformIO support for Raspberry Pi Pico is not official -; https://github.com/platformio/platform-raspberrypi/pull/36 -; https://github.com/earlephilhower/arduino-pico/blob/master/docs/platformio.rst -; board settings: https://github.com/earlephilhower/arduino-pico/blob/master/tools/json/rpipico.json [env:raspberrypi] -upload_protocol = picotool -; platform = raspberrypi -platform = https://github.com/maxgerhardt/platform-raspberrypi.git#f2687073f73d554c9db41f29b4769fd9703f4e55 +platform = https://github.com/maxgerhardt/platform-raspberrypi.git board = rpipicow lib_deps = - bblanchon/ArduinoJson @ 7.2.0 + bblanchon/ArduinoJson @ 7.2.1 khoih-prog/AsyncTCP_RP2040W @ 1.2.0 +lib_ignore = + lwIP_ESPHost build_flags = ${env.build_flags} -Wno-missing-field-initializers @@ -87,25 +102,26 @@ board = ${sysenv.PIO_BOARD} platform = https://github.com/pioarduino/platform-espressif32/releases/download/51.03.05/platform-espressif32.zip board = ${sysenv.PIO_BOARD} lib_deps = - mathieucarbou/AsyncTCP @ 3.2.5 + mathieucarbou/AsyncTCP @ 3.2.14 -[env:ci-arduino-310rc1] -platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc1/platform-espressif32.zip +[env:ci-arduino-310] +platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.10-rc3/platform-espressif32.zip board = ${sysenv.PIO_BOARD} [env:ci-esp8266] platform = espressif8266 board = ${sysenv.PIO_BOARD} lib_deps = - bblanchon/ArduinoJson @ 7.2.0 + bblanchon/ArduinoJson @ 7.2.1 esphome/ESPAsyncTCP-esphome @ 2.0.0 [env:ci-raspberrypi] -; platform = raspberrypi -platform = https://github.com/maxgerhardt/platform-raspberrypi.git#f2687073f73d554c9db41f29b4769fd9703f4e55 +platform = https://github.com/maxgerhardt/platform-raspberrypi.git board = ${sysenv.PIO_BOARD} lib_deps = - bblanchon/ArduinoJson @ 7.2.0 + bblanchon/ArduinoJson @ 7.2.1 khoih-prog/AsyncTCP_RP2040W @ 1.2.0 +lib_ignore = + lwIP_ESPHost build_flags = ${env.build_flags} -Wno-missing-field-initializers diff --git a/src/AsyncEventSource.cpp b/src/AsyncEventSource.cpp index 2d6ab7b..1c0ff2a 100644 --- a/src/AsyncEventSource.cpp +++ b/src/AsyncEventSource.cpp @@ -141,6 +141,9 @@ size_t AsyncEventSourceMessage::ack(size_t len, __attribute__((unused)) uint32_t } size_t AsyncEventSourceMessage::write(AsyncClient* client) { + if (!client) + return 0; + if (_sent >= _len || !client->canSend()) { return 0; } @@ -186,7 +189,10 @@ AsyncEventSourceClient::~AsyncEventSourceClient() { close(); } -void AsyncEventSourceClient::_queueMessage(const char* message, size_t len) { +bool AsyncEventSourceClient::_queueMessage(const char* message, size_t len) { + if (!_client) + return false; + #ifdef ESP32 // length() is not thread-safe, thus acquiring the lock before this call.. std::lock_guard lock(_lockmq); @@ -198,7 +204,7 @@ void AsyncEventSourceClient::_queueMessage(const char* message, size_t len) { #elif defined(ESP32) log_e("Too many messages queued: deleting message"); #endif - return; + return false; } _messageQueue.emplace_back(message, len); @@ -206,6 +212,8 @@ void AsyncEventSourceClient::_queueMessage(const char* message, size_t len) { if (_client->canSend()) { _runQueue(); } + + return true; } void AsyncEventSourceClient::_onAck(size_t len __attribute__((unused)), uint32_t time __attribute__((unused))) { @@ -227,30 +235,31 @@ void AsyncEventSourceClient::_onPoll() { } void AsyncEventSourceClient::_onTimeout(uint32_t time __attribute__((unused))) { - _client->close(true); + if (_client) + _client->close(true); } void AsyncEventSourceClient::_onDisconnect() { - _client = NULL; + if (!_client) + return; + _client = nullptr; _server->_handleDisconnect(this); } void AsyncEventSourceClient::close() { - if (_client != NULL) + if (_client) _client->close(); } -void AsyncEventSourceClient::write(const char* message, size_t len) { - if (!connected()) - return; - _queueMessage(message, len); +bool AsyncEventSourceClient::write(const char* message, size_t len) { + return connected() && _queueMessage(message, len); } -void AsyncEventSourceClient::send(const char* message, const char* event, uint32_t id, uint32_t reconnect) { +bool AsyncEventSourceClient::send(const char* message, const char* event, uint32_t id, uint32_t reconnect) { if (!connected()) - return; + return false; String ev = generateEventMessage(message, event, id, reconnect); - _queueMessage(ev.c_str(), ev.length()); + return _queueMessage(ev.c_str(), ev.length()); } size_t AsyncEventSourceClient::packetsWaiting() const { @@ -261,6 +270,9 @@ size_t AsyncEventSourceClient::packetsWaiting() const { } void AsyncEventSourceClient::_runQueue() { + if (!_client) + return; + size_t total_bytes_written = 0; for (auto i = _messageQueue.begin(); i != _messageQueue.end(); ++i) { if (!i->sent()) { @@ -270,6 +282,7 @@ void AsyncEventSourceClient::_runQueue() { break; } } + if (total_bytes_written > 0) _client->send(); @@ -282,11 +295,6 @@ void AsyncEventSourceClient::_runQueue() { } } -// Handler -void AsyncEventSource::onConnect(ArEventHandlerFunction cb) { - _connectcb = cb; -} - void AsyncEventSource::authorizeConnect(ArAuthorizeConnectHandler cb) { AuthorizationMiddleware* m = new AuthorizationMiddleware(401, cb); m->_freeOnRemoval = true; @@ -308,6 +316,8 @@ void AsyncEventSource::_handleDisconnect(AsyncEventSourceClient* client) { #ifdef ESP32 std::lock_guard lock(_client_queue_lock); #endif + if (_disconnectcb) + _disconnectcb(client); for (auto i = _clients.begin(); i != _clients.end(); ++i) { if (i->get() == client) _clients.erase(i); @@ -346,17 +356,21 @@ size_t AsyncEventSource::avgPacketsWaiting() const { return ((aql) + (nConnectedClients / 2)) / (nConnectedClients); // round up } -void AsyncEventSource::send( +AsyncEventSource::SendStatus AsyncEventSource::send( const char* message, const char* event, uint32_t id, uint32_t reconnect) { String ev = generateEventMessage(message, event, id, reconnect); #ifdef ESP32 std::lock_guard lock(_client_queue_lock); #endif + size_t hits = 0; + size_t miss = 0; for (const auto& c : _clients) { - if (c->connected()) { - c->write(ev.c_str(), ev.length()); - } + if (c->write(ev.c_str(), ev.length())) + ++hits; + else + ++miss; } + return hits == 0 ? DISCARDED : (miss == 0 ? ENQUEUED : PARTIALLY_ENQUEUED); } size_t AsyncEventSource::count() const { @@ -371,11 +385,8 @@ size_t AsyncEventSource::count() const { return n_clients; } -bool AsyncEventSource::canHandle(AsyncWebServerRequest* request) { - if (request->method() != HTTP_GET || !request->url().equals(_url)) { - return false; - } - return true; +bool AsyncEventSource::canHandle(AsyncWebServerRequest* request) const { + return request->isSSE() && request->url().equals(_url); } void AsyncEventSource::handleRequest(AsyncWebServerRequest* request) { diff --git a/src/AsyncEventSource.h b/src/AsyncEventSource.h index 9fc4b7a..10d7901 100644 --- a/src/AsyncEventSource.h +++ b/src/AsyncEventSource.h @@ -81,7 +81,7 @@ class AsyncEventSourceClient { #ifdef ESP32 mutable std::mutex _lockmq; #endif - void _queueMessage(const char* message, size_t len); + bool _queueMessage(const char* message, size_t len); void _runQueue(); public: @@ -90,11 +90,11 @@ class AsyncEventSourceClient { AsyncClient* client() { return _client; } void close(); - void write(const char* message, size_t len); - void send(const String& message, const String& event, uint32_t id = 0, uint32_t reconnect = 0) { send(message.c_str(), event.c_str(), id, reconnect); } - void send(const String& message, const char* event, uint32_t id = 0, uint32_t reconnect = 0) { send(message.c_str(), event, id, reconnect); } - void send(const char* message, const char* event = NULL, uint32_t id = 0, uint32_t reconnect = 0); - bool connected() const { return (_client != NULL) && _client->connected(); } + bool write(const char* message, size_t len); + bool send(const String& message, const String& event, uint32_t id = 0, uint32_t reconnect = 0) { return send(message.c_str(), event.c_str(), id, reconnect); } + bool send(const String& message, const char* event, uint32_t id = 0, uint32_t reconnect = 0) { return send(message.c_str(), event, id, reconnect); } + bool send(const char* message, const char* event = NULL, uint32_t id = 0, uint32_t reconnect = 0); + bool connected() const { return _client && _client->connected(); } uint32_t lastId() const { return _lastId; } size_t packetsWaiting() const; @@ -114,19 +114,28 @@ class AsyncEventSource : public AsyncWebHandler { // since simultaneous access from different tasks is possible mutable std::mutex _client_queue_lock; #endif - ArEventHandlerFunction _connectcb{nullptr}; + ArEventHandlerFunction _connectcb = nullptr; + ArEventHandlerFunction _disconnectcb = nullptr; public: + typedef enum { + DISCARDED = 0, + ENQUEUED = 1, + PARTIALLY_ENQUEUED = 2, + } SendStatus; + AsyncEventSource(const String& url) : _url(url) {}; ~AsyncEventSource() { close(); }; const char* url() const { return _url.c_str(); } void close(); - void onConnect(ArEventHandlerFunction cb); + void onConnect(ArEventHandlerFunction cb) { _connectcb = cb; } + // The client pointer sent to the callback is only for reference purposes. DO NOT CALL ANY METHOD ON IT ! + void onDisconnect(ArEventHandlerFunction cb) { _disconnectcb = cb; } void authorizeConnect(ArAuthorizeConnectHandler cb); - void send(const String& message, const String& event, uint32_t id = 0, uint32_t reconnect = 0) { send(message.c_str(), event.c_str(), id, reconnect); } - void send(const String& message, const char* event, uint32_t id = 0, uint32_t reconnect = 0) { send(message.c_str(), event, id, reconnect); } - void send(const char* message, const char* event = NULL, uint32_t id = 0, uint32_t reconnect = 0); + SendStatus send(const String& message, const String& event, uint32_t id = 0, uint32_t reconnect = 0) { return send(message.c_str(), event.c_str(), id, reconnect); } + SendStatus send(const String& message, const char* event, uint32_t id = 0, uint32_t reconnect = 0) { return send(message.c_str(), event, id, reconnect); } + SendStatus send(const char* message, const char* event = NULL, uint32_t id = 0, uint32_t reconnect = 0); // number of clients connected size_t count() const; size_t avgPacketsWaiting() const; @@ -134,8 +143,8 @@ class AsyncEventSource : public AsyncWebHandler { // system callbacks (do not call) void _addClient(AsyncEventSourceClient* client); void _handleDisconnect(AsyncEventSourceClient* client); - virtual bool canHandle(AsyncWebServerRequest* request) override final; - virtual void handleRequest(AsyncWebServerRequest* request) override final; + bool canHandle(AsyncWebServerRequest* request) const override final; + void handleRequest(AsyncWebServerRequest* request) override final; }; class AsyncEventSourceResponse : public AsyncWebServerResponse { diff --git a/src/AsyncJson.cpp b/src/AsyncJson.cpp index 7117a70..4295653 100644 --- a/src/AsyncJson.cpp +++ b/src/AsyncJson.cpp @@ -89,18 +89,14 @@ AsyncCallbackJsonWebHandler::AsyncCallbackJsonWebHandler(const String& uri, ArJs : _uri(uri), _method(HTTP_GET | HTTP_POST | HTTP_PUT | HTTP_PATCH), _onRequest(onRequest), _maxContentLength(16384) {} #endif -bool AsyncCallbackJsonWebHandler::canHandle(AsyncWebServerRequest* request) { - if (!_onRequest) - return false; - - WebRequestMethodComposite request_method = request->method(); - if (!(_method & request_method)) +bool AsyncCallbackJsonWebHandler::canHandle(AsyncWebServerRequest* request) const { + if (!_onRequest || !request->isHTTP() || !(_method & request->method())) return false; if (_uri.length() && (_uri != request->url() && !request->url().startsWith(_uri + "/"))) return false; - if (request_method != HTTP_GET && !request->contentType().equalsIgnoreCase(asyncsrv::T_application_json)) + if (request->method() != HTTP_GET && !request->contentType().equalsIgnoreCase(asyncsrv::T_application_json)) return false; return true; diff --git a/src/AsyncJson.h b/src/AsyncJson.h index 167364a..a54935a 100644 --- a/src/AsyncJson.h +++ b/src/AsyncJson.h @@ -119,11 +119,11 @@ class AsyncCallbackJsonWebHandler : public AsyncWebHandler { void setMaxContentLength(int maxContentLength) { _maxContentLength = maxContentLength; } void onRequest(ArJsonRequestHandlerFunction fn) { _onRequest = fn; } - virtual bool canHandle(AsyncWebServerRequest* request) override final; - virtual void handleRequest(AsyncWebServerRequest* request) override final; - virtual void handleUpload(__unused AsyncWebServerRequest* request, __unused const String& filename, __unused size_t index, __unused uint8_t* data, __unused size_t len, __unused bool final) override final {} - virtual void handleBody(AsyncWebServerRequest* request, uint8_t* data, size_t len, size_t index, size_t total) override final; - virtual bool isRequestHandlerTrivial() override final { return !_onRequest; } + bool canHandle(AsyncWebServerRequest* request) const override final; + void handleRequest(AsyncWebServerRequest* request) override final; + void handleUpload(__unused AsyncWebServerRequest* request, __unused const String& filename, __unused size_t index, __unused uint8_t* data, __unused size_t len, __unused bool final) override final {} + void handleBody(AsyncWebServerRequest* request, uint8_t* data, size_t len, size_t index, size_t total) override final; + bool isRequestHandlerTrivial() const override final { return !_onRequest; } }; #endif // ASYNC_JSON_SUPPORT == 1 diff --git a/src/AsyncMessagePack.cpp b/src/AsyncMessagePack.cpp index 076f558..85af671 100644 --- a/src/AsyncMessagePack.cpp +++ b/src/AsyncMessagePack.cpp @@ -44,18 +44,14 @@ AsyncCallbackMessagePackWebHandler::AsyncCallbackMessagePackWebHandler(const Str : _uri(uri), _method(HTTP_GET | HTTP_POST | HTTP_PUT | HTTP_PATCH), _onRequest(onRequest), _maxContentLength(16384) {} #endif -bool AsyncCallbackMessagePackWebHandler::canHandle(AsyncWebServerRequest* request) { - if (!_onRequest) - return false; - - WebRequestMethodComposite request_method = request->method(); - if (!(_method & request_method)) +bool AsyncCallbackMessagePackWebHandler::canHandle(AsyncWebServerRequest* request) const { + if (!_onRequest || !request->isHTTP() || !(_method & request->method())) return false; if (_uri.length() && (_uri != request->url() && !request->url().startsWith(_uri + "/"))) return false; - if (request_method != HTTP_GET && !request->contentType().equalsIgnoreCase(asyncsrv::T_application_msgpack)) + if (request->method() != HTTP_GET && !request->contentType().equalsIgnoreCase(asyncsrv::T_application_msgpack)) return false; return true; diff --git a/src/AsyncMessagePack.h b/src/AsyncMessagePack.h index 9ac5ee5..78fde92 100644 --- a/src/AsyncMessagePack.h +++ b/src/AsyncMessagePack.h @@ -92,11 +92,11 @@ class AsyncCallbackMessagePackWebHandler : public AsyncWebHandler { void setMaxContentLength(int maxContentLength) { _maxContentLength = maxContentLength; } void onRequest(ArMessagePackRequestHandlerFunction fn) { _onRequest = fn; } - virtual bool canHandle(AsyncWebServerRequest* request) override final; - virtual void handleRequest(AsyncWebServerRequest* request) override final; - virtual void handleUpload(__unused AsyncWebServerRequest* request, __unused const String& filename, __unused size_t index, __unused uint8_t* data, __unused size_t len, __unused bool final) override final {} - virtual void handleBody(AsyncWebServerRequest* request, uint8_t* data, size_t len, size_t index, size_t total) override final; - virtual bool isRequestHandlerTrivial() override final { return !_onRequest; } + bool canHandle(AsyncWebServerRequest* request) const override final; + void handleRequest(AsyncWebServerRequest* request) override final; + void handleUpload(__unused AsyncWebServerRequest* request, __unused const String& filename, __unused size_t index, __unused uint8_t* data, __unused size_t len, __unused bool final) override final {} + void handleBody(AsyncWebServerRequest* request, uint8_t* data, size_t len, size_t index, size_t total) override final; + bool isRequestHandlerTrivial() const override final { return !_onRequest; } }; #endif // ASYNC_MSG_PACK_SUPPORT == 1 diff --git a/src/AsyncWebSocket.cpp b/src/AsyncWebSocket.cpp index b040a9f..b89c0d5 100644 --- a/src/AsyncWebSocket.cpp +++ b/src/AsyncWebSocket.cpp @@ -39,7 +39,7 @@ using namespace asyncsrv; size_t webSocketSendFrameWindow(AsyncClient* client) { - if (!client->canSend()) + if (!client || !client->canSend()) return 0; size_t space = client->space(); if (space < 9) @@ -48,7 +48,7 @@ size_t webSocketSendFrameWindow(AsyncClient* client) { } size_t webSocketSendFrame(AsyncClient* client, bool final, uint8_t opcode, bool mask, uint8_t* data, size_t len) { - if (!client->canSend()) { + if (!client || !client->canSend()) { // Serial.println("SF 1"); return 0; } @@ -185,12 +185,12 @@ class AsyncWebSocketControl { _data = NULL; } - virtual ~AsyncWebSocketControl() { + ~AsyncWebSocketControl() { if (_data != NULL) free(_data); } - virtual bool finished() const { return _finished; } + bool finished() const { return _finished; } uint8_t opcode() { return _opcode; } uint8_t len() { return _len + 2; } size_t send(AsyncClient* client) { @@ -219,6 +219,9 @@ void AsyncWebSocketMessage::ack(size_t len, uint32_t time) { } size_t AsyncWebSocketMessage::send(AsyncClient* client) { + if (!client) + return 0; + if (_status != WS_MSG_SENDING) return 0; if (_acked < _ack) { @@ -343,7 +346,7 @@ void AsyncWebSocketClient::_onPoll() { #ifdef ESP32 std::unique_lock lock(_lock); #endif - if (_client->canSend() && (!_controlQueue.empty() || !_messageQueue.empty())) { + if (_client && _client->canSend() && (!_controlQueue.empty() || !_messageQueue.empty())) { _runQueue(); } else if (_keepAlivePeriod > 0 && (millis() - _lastMessageTime) >= _keepAlivePeriod && (_controlQueue.empty() && _messageQueue.empty())) { #ifdef ESP32 @@ -371,16 +374,13 @@ bool AsyncWebSocketClient::queueIsFull() const { #ifdef ESP32 std::lock_guard lock(_lock); #endif - size_t size = _messageQueue.size(); - ; - return (size >= WS_MAX_QUEUED_MESSAGES) || (_status != WS_CONNECTED); + return (_messageQueue.size() >= WS_MAX_QUEUED_MESSAGES) || (_status != WS_CONNECTED); } size_t AsyncWebSocketClient::queueLen() const { #ifdef ESP32 std::lock_guard lock(_lock); #endif - return _messageQueue.size(); } @@ -391,38 +391,43 @@ bool AsyncWebSocketClient::canSend() const { return _messageQueue.size() < WS_MAX_QUEUED_MESSAGES; } -void AsyncWebSocketClient::_queueControl(uint8_t opcode, const uint8_t* data, size_t len, bool mask) { +bool AsyncWebSocketClient::_queueControl(uint8_t opcode, const uint8_t* data, size_t len, bool mask) { if (!_client) - return; - - { -#ifdef ESP32 - std::lock_guard lock(_lock); -#endif - _controlQueue.emplace_back(opcode, data, len, mask); - } - - if (_client && _client->canSend()) - _runQueue(); -} - -void AsyncWebSocketClient::_queueMessage(AsyncWebSocketSharedBuffer buffer, uint8_t opcode, bool mask) { - if (!_client || buffer->size() == 0 || _status != WS_CONNECTED) - return; + return false; #ifdef ESP32 std::lock_guard lock(_lock); #endif + + _controlQueue.emplace_back(opcode, data, len, mask); + + if (_client && _client->canSend()) + _runQueue(); + + return true; +} + +bool AsyncWebSocketClient::_queueMessage(AsyncWebSocketSharedBuffer buffer, uint8_t opcode, bool mask) { + if (!_client || buffer->size() == 0 || _status != WS_CONNECTED) + return false; + +#ifdef ESP32 + std::lock_guard lock(_lock); +#endif + if (_messageQueue.size() >= WS_MAX_QUEUED_MESSAGES) { if (closeWhenFull) { + _status = WS_DISCONNECTED; + + if (_client) + _client->close(true); + #ifdef ESP8266 ets_printf("AsyncWebSocketClient::_queueMessage: Too many messages queued: closing connection\n"); #elif defined(ESP32) log_e("Too many messages queued: closing connection"); #endif - _status = WS_DISCONNECTED; - if (_client) - _client->close(true); + } else { #ifdef ESP8266 ets_printf("AsyncWebSocketClient::_queueMessage: Too many messages queued: discarding new message\n"); @@ -430,13 +435,16 @@ void AsyncWebSocketClient::_queueMessage(AsyncWebSocketSharedBuffer buffer, uint log_e("Too many messages queued: discarding new message"); #endif } - return; - } else { - _messageQueue.emplace_back(buffer, opcode, mask); + + return false; } + _messageQueue.emplace_back(buffer, opcode, mask); + if (_client && _client->canSend()) _runQueue(); + + return true; } void AsyncWebSocketClient::close(uint16_t code, const char* message) { @@ -466,9 +474,8 @@ void AsyncWebSocketClient::close(uint16_t code, const char* message) { _queueControl(WS_DISCONNECT); } -void AsyncWebSocketClient::ping(const uint8_t* data, size_t len) { - if (_status == WS_CONNECTED) - _queueControl(WS_PING, data, len); +bool AsyncWebSocketClient::ping(const uint8_t* data, size_t len) { + return _status == WS_CONNECTED && _queueControl(WS_PING, data, len); } void AsyncWebSocketClient::_onError(int8_t) { @@ -476,6 +483,8 @@ void AsyncWebSocketClient::_onError(int8_t) { } void AsyncWebSocketClient::_onTimeout(uint32_t time) { + if (!_client) + return; // Serial.println("onTime"); (void)time; _client->close(true); @@ -483,7 +492,7 @@ void AsyncWebSocketClient::_onTimeout(uint32_t time) { void AsyncWebSocketClient::_onDisconnect() { // Serial.println("onDis"); - _client = NULL; + _client = nullptr; } void AsyncWebSocketClient::_onData(void* pbuf, size_t plen) { @@ -535,7 +544,7 @@ void AsyncWebSocketClient::_onData(void* pbuf, size_t plen) { } } if (datalen > 0) - _server->_handleEvent(this, WS_EVT_DATA, (void*)&_pinfo, (uint8_t*)data, datalen); + _server->_handleEvent(this, WS_EVT_DATA, (void*)&_pinfo, data, datalen); _pinfo.index += datalen; } else if ((datalen + _pinfo.index) == _pinfo.len) { @@ -550,18 +559,21 @@ void AsyncWebSocketClient::_onData(void* pbuf, size_t plen) { } if (_status == WS_DISCONNECTING) { _status = WS_DISCONNECTED; - _client->close(true); + if (_client) + _client->close(true); } else { _status = WS_DISCONNECTING; - _client->ackLater(); + if (_client) + _client->ackLater(); _queueControl(WS_DISCONNECT, data, datalen); } } else if (_pinfo.opcode == WS_PING) { + _server->_handleEvent(this, WS_EVT_PING, NULL, NULL, 0); _queueControl(WS_PONG, data, datalen); } else if (_pinfo.opcode == WS_PONG) { if (datalen != AWSC_PING_PAYLOAD_LEN || memcmp(AWSC_PING_PAYLOAD, data, AWSC_PING_PAYLOAD_LEN) != 0) - _server->_handleEvent(this, WS_EVT_PONG, NULL, data, datalen); - } else if (_pinfo.opcode < 8) { // continuation or text/binary frame + _server->_handleEvent(this, WS_EVT_PONG, NULL, NULL, 0); + } else if (_pinfo.opcode < WS_DISCONNECT) { // continuation or text/binary frame _server->_handleEvent(this, WS_EVT_DATA, (void*)&_pinfo, data, datalen); if (_pinfo.final) _pinfo.num = 0; @@ -575,7 +587,7 @@ void AsyncWebSocketClient::_onData(void* pbuf, size_t plen) { } // restore byte as _handleEvent may have added a null terminator i.e., data[len] = 0; - if (datalen > 0) + if (datalen) data[datalen] = datalast; data += datalen; @@ -601,9 +613,9 @@ size_t AsyncWebSocketClient::printf(const char* format, ...) { len = vsnprintf(buffer, len + 1, format, arg); va_end(arg); - text(buffer, len); + bool enqueued = text(buffer, len); delete[] buffer; - return len; + return enqueued ? len : 0; } #ifdef ESP8266 @@ -625,9 +637,9 @@ size_t AsyncWebSocketClient::printf_P(PGM_P formatP, ...) { len = vsnprintf_P(buffer, len + 1, formatP, arg); va_end(arg); - text(buffer, len); + bool enqueued = text(buffer, len); delete[] buffer; - return len; + return enqueued ? len : 0; } #endif @@ -639,35 +651,37 @@ namespace { } } -void AsyncWebSocketClient::text(AsyncWebSocketMessageBuffer* buffer) { +bool AsyncWebSocketClient::text(AsyncWebSocketMessageBuffer* buffer) { + bool enqueued = false; if (buffer) { - text(std::move(buffer->_buffer)); + enqueued = text(std::move(buffer->_buffer)); delete buffer; } + return enqueued; } -void AsyncWebSocketClient::text(AsyncWebSocketSharedBuffer buffer) { - _queueMessage(buffer); +bool AsyncWebSocketClient::text(AsyncWebSocketSharedBuffer buffer) { + return _queueMessage(buffer); } -void AsyncWebSocketClient::text(const uint8_t* message, size_t len) { - text(makeSharedBuffer(message, len)); +bool AsyncWebSocketClient::text(const uint8_t* message, size_t len) { + return text(makeSharedBuffer(message, len)); } -void AsyncWebSocketClient::text(const char* message, size_t len) { - text((const uint8_t*)message, len); +bool AsyncWebSocketClient::text(const char* message, size_t len) { + return text((const uint8_t*)message, len); } -void AsyncWebSocketClient::text(const char* message) { - text(message, strlen(message)); +bool AsyncWebSocketClient::text(const char* message) { + return text(message, strlen(message)); } -void AsyncWebSocketClient::text(const String& message) { - text(message.c_str(), message.length()); +bool AsyncWebSocketClient::text(const String& message) { + return text(message.c_str(), message.length()); } #ifdef ESP8266 -void AsyncWebSocketClient::text(const __FlashStringHelper* data) { +bool AsyncWebSocketClient::text(const __FlashStringHelper* data) { PGM_P p = reinterpret_cast(data); size_t n = 0; @@ -678,51 +692,57 @@ void AsyncWebSocketClient::text(const __FlashStringHelper* data) { } char* message = (char*)malloc(n + 1); + bool enqueued = false; if (message) { memcpy_P(message, p, n); message[n] = 0; - text(message, n); + enqueued = text(message, n); free(message); } + return enqueued; } #endif // ESP8266 -void AsyncWebSocketClient::binary(AsyncWebSocketMessageBuffer* buffer) { +bool AsyncWebSocketClient::binary(AsyncWebSocketMessageBuffer* buffer) { + bool enqueued = false; if (buffer) { - binary(std::move(buffer->_buffer)); + enqueued = binary(std::move(buffer->_buffer)); delete buffer; } + return enqueued; } -void AsyncWebSocketClient::binary(AsyncWebSocketSharedBuffer buffer) { - _queueMessage(buffer, WS_BINARY); +bool AsyncWebSocketClient::binary(AsyncWebSocketSharedBuffer buffer) { + return _queueMessage(buffer, WS_BINARY); } -void AsyncWebSocketClient::binary(const uint8_t* message, size_t len) { - binary(makeSharedBuffer(message, len)); +bool AsyncWebSocketClient::binary(const uint8_t* message, size_t len) { + return binary(makeSharedBuffer(message, len)); } -void AsyncWebSocketClient::binary(const char* message, size_t len) { - binary((const uint8_t*)message, len); +bool AsyncWebSocketClient::binary(const char* message, size_t len) { + return binary((const uint8_t*)message, len); } -void AsyncWebSocketClient::binary(const char* message) { - binary(message, strlen(message)); +bool AsyncWebSocketClient::binary(const char* message) { + return binary(message, strlen(message)); } -void AsyncWebSocketClient::binary(const String& message) { - binary(message.c_str(), message.length()); +bool AsyncWebSocketClient::binary(const String& message) { + return binary(message.c_str(), message.length()); } #ifdef ESP8266 -void AsyncWebSocketClient::binary(const __FlashStringHelper* data, size_t len) { +bool AsyncWebSocketClient::binary(const __FlashStringHelper* data, size_t len) { PGM_P p = reinterpret_cast(data); char* message = (char*)malloc(len); + bool enqueued = false; if (message) { memcpy_P(message, p, len); - binary(message, len); + enqueued = binary(message, len); free(message); } + return enqueued; } #endif @@ -801,33 +821,38 @@ void AsyncWebSocket::cleanupClients(uint16_t maxClients) { } } -void AsyncWebSocket::ping(uint32_t id, const uint8_t* data, size_t len) { - if (AsyncWebSocketClient* c = client(id)) - c->ping(data, len); +bool AsyncWebSocket::ping(uint32_t id, const uint8_t* data, size_t len) { + AsyncWebSocketClient* c = client(id); + return c && c->ping(data, len); } -void AsyncWebSocket::pingAll(const uint8_t* data, size_t len) { +AsyncWebSocket::SendStatus AsyncWebSocket::pingAll(const uint8_t* data, size_t len) { + size_t hit = 0; + size_t miss = 0; for (auto& c : _clients) - if (c.status() == WS_CONNECTED) - c.ping(data, len); + if (c.status() == WS_CONNECTED && c.ping(data, len)) + hit++; + else + miss++; + return hit == 0 ? DISCARDED : (miss == 0 ? ENQUEUED : PARTIALLY_ENQUEUED); } -void AsyncWebSocket::text(uint32_t id, const uint8_t* message, size_t len) { - if (AsyncWebSocketClient* c = client(id)) - c->text(makeSharedBuffer(message, len)); +bool AsyncWebSocket::text(uint32_t id, const uint8_t* message, size_t len) { + AsyncWebSocketClient* c = client(id); + return c && c->text(makeSharedBuffer(message, len)); } -void AsyncWebSocket::text(uint32_t id, const char* message, size_t len) { - text(id, (const uint8_t*)message, len); +bool AsyncWebSocket::text(uint32_t id, const char* message, size_t len) { + return text(id, (const uint8_t*)message, len); } -void AsyncWebSocket::text(uint32_t id, const char* message) { - text(id, message, strlen(message)); +bool AsyncWebSocket::text(uint32_t id, const char* message) { + return text(id, message, strlen(message)); } -void AsyncWebSocket::text(uint32_t id, const String& message) { - text(id, message.c_str(), message.length()); +bool AsyncWebSocket::text(uint32_t id, const String& message) { + return text(id, message.c_str(), message.length()); } #ifdef ESP8266 -void AsyncWebSocket::text(uint32_t id, const __FlashStringHelper* data) { +bool AsyncWebSocket::text(uint32_t id, const __FlashStringHelper* data) { PGM_P p = reinterpret_cast(data); size_t n = 0; @@ -838,40 +863,44 @@ void AsyncWebSocket::text(uint32_t id, const __FlashStringHelper* data) { } char* message = (char*)malloc(n + 1); + bool enqueued = false; if (message) { memcpy_P(message, p, n); message[n] = 0; - text(id, message, n); + enqueued = text(id, message, n); free(message); } + return enqueued; } #endif // ESP8266 -void AsyncWebSocket::text(uint32_t id, AsyncWebSocketMessageBuffer* buffer) { +bool AsyncWebSocket::text(uint32_t id, AsyncWebSocketMessageBuffer* buffer) { + bool enqueued = false; if (buffer) { - text(id, std::move(buffer->_buffer)); + enqueued = text(id, std::move(buffer->_buffer)); delete buffer; } + return enqueued; } -void AsyncWebSocket::text(uint32_t id, AsyncWebSocketSharedBuffer buffer) { - if (AsyncWebSocketClient* c = client(id)) - c->text(buffer); +bool AsyncWebSocket::text(uint32_t id, AsyncWebSocketSharedBuffer buffer) { + AsyncWebSocketClient* c = client(id); + return c && c->text(buffer); } -void AsyncWebSocket::textAll(const uint8_t* message, size_t len) { - textAll(makeSharedBuffer(message, len)); +AsyncWebSocket::SendStatus AsyncWebSocket::textAll(const uint8_t* message, size_t len) { + return textAll(makeSharedBuffer(message, len)); } -void AsyncWebSocket::textAll(const char* message, size_t len) { - textAll((const uint8_t*)message, len); +AsyncWebSocket::SendStatus AsyncWebSocket::textAll(const char* message, size_t len) { + return textAll((const uint8_t*)message, len); } -void AsyncWebSocket::textAll(const char* message) { - textAll(message, strlen(message)); +AsyncWebSocket::SendStatus AsyncWebSocket::textAll(const char* message) { + return textAll(message, strlen(message)); } -void AsyncWebSocket::textAll(const String& message) { - textAll(message.c_str(), message.length()); +AsyncWebSocket::SendStatus AsyncWebSocket::textAll(const String& message) { + return textAll(message.c_str(), message.length()); } #ifdef ESP8266 -void AsyncWebSocket::textAll(const __FlashStringHelper* data) { +AsyncWebSocket::SendStatus AsyncWebSocket::textAll(const __FlashStringHelper* data) { PGM_P p = reinterpret_cast(data); size_t n = 0; @@ -882,99 +911,121 @@ void AsyncWebSocket::textAll(const __FlashStringHelper* data) { } char* message = (char*)malloc(n + 1); + AsyncWebSocket::SendStatus status = DISCARDED; if (message) { memcpy_P(message, p, n); message[n] = 0; - textAll(message, n); + status = textAll(message, n); free(message); } + return status; } #endif // ESP8266 -void AsyncWebSocket::textAll(AsyncWebSocketMessageBuffer* buffer) { +AsyncWebSocket::SendStatus AsyncWebSocket::textAll(AsyncWebSocketMessageBuffer* buffer) { + AsyncWebSocket::SendStatus status = DISCARDED; if (buffer) { - textAll(std::move(buffer->_buffer)); + status = textAll(std::move(buffer->_buffer)); delete buffer; } + return status; } -void AsyncWebSocket::textAll(AsyncWebSocketSharedBuffer buffer) { +AsyncWebSocket::SendStatus AsyncWebSocket::textAll(AsyncWebSocketSharedBuffer buffer) { + size_t hit = 0; + size_t miss = 0; for (auto& c : _clients) - if (c.status() == WS_CONNECTED) - c.text(buffer); + if (c.status() == WS_CONNECTED && c.text(buffer)) + hit++; + else + miss++; + return hit == 0 ? DISCARDED : (miss == 0 ? ENQUEUED : PARTIALLY_ENQUEUED); } -void AsyncWebSocket::binary(uint32_t id, const uint8_t* message, size_t len) { - if (AsyncWebSocketClient* c = client(id)) - c->binary(makeSharedBuffer(message, len)); +bool AsyncWebSocket::binary(uint32_t id, const uint8_t* message, size_t len) { + AsyncWebSocketClient* c = client(id); + return c && c->binary(makeSharedBuffer(message, len)); } -void AsyncWebSocket::binary(uint32_t id, const char* message, size_t len) { - binary(id, (const uint8_t*)message, len); +bool AsyncWebSocket::binary(uint32_t id, const char* message, size_t len) { + return binary(id, (const uint8_t*)message, len); } -void AsyncWebSocket::binary(uint32_t id, const char* message) { - binary(id, message, strlen(message)); +bool AsyncWebSocket::binary(uint32_t id, const char* message) { + return binary(id, message, strlen(message)); } -void AsyncWebSocket::binary(uint32_t id, const String& message) { - binary(id, message.c_str(), message.length()); +bool AsyncWebSocket::binary(uint32_t id, const String& message) { + return binary(id, message.c_str(), message.length()); } #ifdef ESP8266 -void AsyncWebSocket::binary(uint32_t id, const __FlashStringHelper* data, size_t len) { +bool AsyncWebSocket::binary(uint32_t id, const __FlashStringHelper* data, size_t len) { PGM_P p = reinterpret_cast(data); char* message = (char*)malloc(len); + bool enqueued = false; if (message) { memcpy_P(message, p, len); - binary(id, message, len); + enqueued = binary(id, message, len); free(message); } + return enqueued; } #endif // ESP8266 -void AsyncWebSocket::binary(uint32_t id, AsyncWebSocketMessageBuffer* buffer) { +bool AsyncWebSocket::binary(uint32_t id, AsyncWebSocketMessageBuffer* buffer) { + bool enqueued = false; if (buffer) { - binary(id, std::move(buffer->_buffer)); + enqueued = binary(id, std::move(buffer->_buffer)); delete buffer; } + return enqueued; } -void AsyncWebSocket::binary(uint32_t id, AsyncWebSocketSharedBuffer buffer) { - if (AsyncWebSocketClient* c = client(id)) - c->binary(buffer); +bool AsyncWebSocket::binary(uint32_t id, AsyncWebSocketSharedBuffer buffer) { + AsyncWebSocketClient* c = client(id); + return c && c->binary(buffer); } -void AsyncWebSocket::binaryAll(const uint8_t* message, size_t len) { - binaryAll(makeSharedBuffer(message, len)); +AsyncWebSocket::SendStatus AsyncWebSocket::binaryAll(const uint8_t* message, size_t len) { + return binaryAll(makeSharedBuffer(message, len)); } -void AsyncWebSocket::binaryAll(const char* message, size_t len) { - binaryAll((const uint8_t*)message, len); +AsyncWebSocket::SendStatus AsyncWebSocket::binaryAll(const char* message, size_t len) { + return binaryAll((const uint8_t*)message, len); } -void AsyncWebSocket::binaryAll(const char* message) { - binaryAll(message, strlen(message)); +AsyncWebSocket::SendStatus AsyncWebSocket::binaryAll(const char* message) { + return binaryAll(message, strlen(message)); } -void AsyncWebSocket::binaryAll(const String& message) { - binaryAll(message.c_str(), message.length()); +AsyncWebSocket::SendStatus AsyncWebSocket::binaryAll(const String& message) { + return binaryAll(message.c_str(), message.length()); } #ifdef ESP8266 -void AsyncWebSocket::binaryAll(const __FlashStringHelper* data, size_t len) { +AsyncWebSocket::SendStatus AsyncWebSocket::binaryAll(const __FlashStringHelper* data, size_t len) { PGM_P p = reinterpret_cast(data); char* message = (char*)malloc(len); + AsyncWebSocket::SendStatus status = DISCARDED; if (message) { memcpy_P(message, p, len); - binaryAll(message, len); + status = binaryAll(message, len); free(message); } + return status; } #endif // ESP8266 -void AsyncWebSocket::binaryAll(AsyncWebSocketMessageBuffer* buffer) { +AsyncWebSocket::SendStatus AsyncWebSocket::binaryAll(AsyncWebSocketMessageBuffer* buffer) { + AsyncWebSocket::SendStatus status = DISCARDED; if (buffer) { - binaryAll(std::move(buffer->_buffer)); + status = binaryAll(std::move(buffer->_buffer)); delete buffer; } + return status; } -void AsyncWebSocket::binaryAll(AsyncWebSocketSharedBuffer buffer) { +AsyncWebSocket::SendStatus AsyncWebSocket::binaryAll(AsyncWebSocketSharedBuffer buffer) { + size_t hit = 0; + size_t miss = 0; for (auto& c : _clients) - if (c.status() == WS_CONNECTED) - c.binary(buffer); + if (c.status() == WS_CONNECTED && c.binary(buffer)) + hit++; + else + miss++; + return hit == 0 ? DISCARDED : (miss == 0 ? ENQUEUED : PARTIALLY_ENQUEUED); } size_t AsyncWebSocket::printf(uint32_t id, const char* format, ...) { @@ -1007,9 +1058,9 @@ size_t AsyncWebSocket::printfAll(const char* format, ...) { len = vsnprintf(buffer, len + 1, format, arg); va_end(arg); - textAll(buffer, len); + AsyncWebSocket::SendStatus status = textAll(buffer, len); delete[] buffer; - return len; + return status == DISCARDED ? 0 : len; } #ifdef ESP8266 @@ -1043,9 +1094,9 @@ size_t AsyncWebSocket::printfAll_P(PGM_P formatP, ...) { len = vsnprintf_P(buffer, len + 1, formatP, arg); va_end(arg); - textAll(buffer, len); + AsyncWebSocket::SendStatus status = textAll(buffer, len); delete[] buffer; - return len; + return status == DISCARDED ? 0 : len; } #endif @@ -1071,14 +1122,8 @@ const char __WS_STR_UUID[] PROGMEM = {"258EAFA5-E914-47DA-95CA-C5AB0DC85B11"}; #define WS_STR_ACCEPT FPSTR(__WS_STR_ACCEPT) #define WS_STR_UUID FPSTR(__WS_STR_UUID) -bool AsyncWebSocket::canHandle(AsyncWebServerRequest* request) { - if (!_enabled) - return false; - - if (request->method() != HTTP_GET || !request->url().equals(_url) || !request->isExpectedRequestedConnType(RCT_WS)) - return false; - - return true; +bool AsyncWebSocket::canHandle(AsyncWebServerRequest* request) const { + return _enabled && request->isWebSocketUpgrade() && request->url().equals(_url); } void AsyncWebSocket::handleRequest(AsyncWebServerRequest* request) { diff --git a/src/AsyncWebSocket.h b/src/AsyncWebSocket.h index 1da3d15..671c866 100644 --- a/src/AsyncWebSocket.h +++ b/src/AsyncWebSocket.h @@ -104,6 +104,7 @@ typedef enum { WS_MSG_SENDING, WS_MSG_ERROR } AwsMessageStatus; typedef enum { WS_EVT_CONNECT, WS_EVT_DISCONNECT, + WS_EVT_PING, WS_EVT_PONG, WS_EVT_ERROR, WS_EVT_DATA } AwsEventType; @@ -164,8 +165,8 @@ class AsyncWebSocketClient { uint32_t _lastMessageTime; uint32_t _keepAlivePeriod; - void _queueControl(uint8_t opcode, const uint8_t* data = NULL, size_t len = 0, bool mask = false); - void _queueMessage(AsyncWebSocketSharedBuffer buffer, uint8_t opcode = WS_TEXT, bool mask = false); + bool _queueControl(uint8_t opcode, const uint8_t* data = NULL, size_t len = 0, bool mask = false); + bool _queueMessage(AsyncWebSocketSharedBuffer buffer, uint8_t opcode = WS_TEXT, bool mask = false); void _runQueue(); void _clearQueue(); @@ -212,7 +213,7 @@ class AsyncWebSocketClient { // control frames void close(uint16_t code = 0, const char* message = NULL); - void ping(const uint8_t* data = NULL, size_t len = 0); + bool ping(const uint8_t* data = NULL, size_t len = 0); // set auto-ping period in seconds. disabled if zero (default) void keepAlivePeriod(uint16_t seconds) { @@ -229,19 +230,19 @@ class AsyncWebSocketClient { size_t printf(const char* format, ...) __attribute__((format(printf, 2, 3))); - void text(AsyncWebSocketSharedBuffer buffer); - void text(const uint8_t* message, size_t len); - void text(const char* message, size_t len); - void text(const char* message); - void text(const String& message); - void text(AsyncWebSocketMessageBuffer* buffer); + bool text(AsyncWebSocketSharedBuffer buffer); + bool text(const uint8_t* message, size_t len); + bool text(const char* message, size_t len); + bool text(const char* message); + bool text(const String& message); + bool text(AsyncWebSocketMessageBuffer* buffer); - void binary(AsyncWebSocketSharedBuffer buffer); - void binary(const uint8_t* message, size_t len); - void binary(const char* message, size_t len); - void binary(const char* message); - void binary(const String& message); - void binary(AsyncWebSocketMessageBuffer* buffer); + bool binary(AsyncWebSocketSharedBuffer buffer); + bool binary(const uint8_t* message, size_t len); + bool binary(const char* message, size_t len); + bool binary(const char* message); + bool binary(const String& message); + bool binary(AsyncWebSocketMessageBuffer* buffer); bool canSend() const; @@ -255,8 +256,8 @@ class AsyncWebSocketClient { #ifdef ESP8266 size_t printf_P(PGM_P formatP, ...) __attribute__((format(printf, 2, 3))); - void text(const __FlashStringHelper* message); - void binary(const __FlashStringHelper* message, size_t len); + bool text(const __FlashStringHelper* message); + bool binary(const __FlashStringHelper* message, size_t len); #endif }; @@ -277,6 +278,12 @@ class AsyncWebSocket : public AsyncWebHandler { #endif public: + typedef enum { + DISCARDED = 0, + ENQUEUED = 1, + PARTIALLY_ENQUEUED = 2, + } SendStatus; + explicit AsyncWebSocket(const char* url) : _url(url), _cNextId(1), _enabled(true) {} AsyncWebSocket(const String& url) : _url(url), _cNextId(1), _enabled(true) {} ~AsyncWebSocket() {}; @@ -294,45 +301,45 @@ class AsyncWebSocket : public AsyncWebHandler { void closeAll(uint16_t code = 0, const char* message = NULL); void cleanupClients(uint16_t maxClients = DEFAULT_MAX_WS_CLIENTS); - void ping(uint32_t id, const uint8_t* data = NULL, size_t len = 0); - void pingAll(const uint8_t* data = NULL, size_t len = 0); // done + bool ping(uint32_t id, const uint8_t* data = NULL, size_t len = 0); + SendStatus pingAll(const uint8_t* data = NULL, size_t len = 0); // done - void text(uint32_t id, const uint8_t* message, size_t len); - void text(uint32_t id, const char* message, size_t len); - void text(uint32_t id, const char* message); - void text(uint32_t id, const String& message); - void text(uint32_t id, AsyncWebSocketMessageBuffer* buffer); - void text(uint32_t id, AsyncWebSocketSharedBuffer buffer); + bool text(uint32_t id, const uint8_t* message, size_t len); + bool text(uint32_t id, const char* message, size_t len); + bool text(uint32_t id, const char* message); + bool text(uint32_t id, const String& message); + bool text(uint32_t id, AsyncWebSocketMessageBuffer* buffer); + bool text(uint32_t id, AsyncWebSocketSharedBuffer buffer); - void textAll(const uint8_t* message, size_t len); - void textAll(const char* message, size_t len); - void textAll(const char* message); - void textAll(const String& message); - void textAll(AsyncWebSocketMessageBuffer* buffer); - void textAll(AsyncWebSocketSharedBuffer buffer); + SendStatus textAll(const uint8_t* message, size_t len); + SendStatus textAll(const char* message, size_t len); + SendStatus textAll(const char* message); + SendStatus textAll(const String& message); + SendStatus textAll(AsyncWebSocketMessageBuffer* buffer); + SendStatus textAll(AsyncWebSocketSharedBuffer buffer); - void binary(uint32_t id, const uint8_t* message, size_t len); - void binary(uint32_t id, const char* message, size_t len); - void binary(uint32_t id, const char* message); - void binary(uint32_t id, const String& message); - void binary(uint32_t id, AsyncWebSocketMessageBuffer* buffer); - void binary(uint32_t id, AsyncWebSocketSharedBuffer buffer); + bool binary(uint32_t id, const uint8_t* message, size_t len); + bool binary(uint32_t id, const char* message, size_t len); + bool binary(uint32_t id, const char* message); + bool binary(uint32_t id, const String& message); + bool binary(uint32_t id, AsyncWebSocketMessageBuffer* buffer); + bool binary(uint32_t id, AsyncWebSocketSharedBuffer buffer); - void binaryAll(const uint8_t* message, size_t len); - void binaryAll(const char* message, size_t len); - void binaryAll(const char* message); - void binaryAll(const String& message); - void binaryAll(AsyncWebSocketMessageBuffer* buffer); - void binaryAll(AsyncWebSocketSharedBuffer buffer); + SendStatus binaryAll(const uint8_t* message, size_t len); + SendStatus binaryAll(const char* message, size_t len); + SendStatus binaryAll(const char* message); + SendStatus binaryAll(const String& message); + SendStatus binaryAll(AsyncWebSocketMessageBuffer* buffer); + SendStatus binaryAll(AsyncWebSocketSharedBuffer buffer); size_t printf(uint32_t id, const char* format, ...) __attribute__((format(printf, 3, 4))); size_t printfAll(const char* format, ...) __attribute__((format(printf, 2, 3))); #ifdef ESP8266 - void text(uint32_t id, const __FlashStringHelper* message); - void textAll(const __FlashStringHelper* message); - void binary(uint32_t id, const __FlashStringHelper* message, size_t len); - void binaryAll(const __FlashStringHelper* message, size_t len); + bool text(uint32_t id, const __FlashStringHelper* message); + SendStatus textAll(const __FlashStringHelper* message); + bool binary(uint32_t id, const __FlashStringHelper* message, size_t len); + SendStatus binaryAll(const __FlashStringHelper* message, size_t len); size_t printf_P(uint32_t id, PGM_P formatP, ...) __attribute__((format(printf, 3, 4))); size_t printfAll_P(PGM_P formatP, ...) __attribute__((format(printf, 2, 3))); #endif @@ -344,8 +351,8 @@ class AsyncWebSocket : public AsyncWebHandler { uint32_t _getNextId() { return _cNextId++; } AsyncWebSocketClient* _newClient(AsyncWebServerRequest* request); void _handleEvent(AsyncWebSocketClient* client, AwsEventType type, void* arg, uint8_t* data, size_t len); - virtual bool canHandle(AsyncWebServerRequest* request) override final; - virtual void handleRequest(AsyncWebServerRequest* request) override final; + bool canHandle(AsyncWebServerRequest* request) const override final; + void handleRequest(AsyncWebServerRequest* request) override final; // messagebuffer functions/objects. AsyncWebSocketMessageBuffer* makeBuffer(size_t size = 0); diff --git a/src/ChunkPrint.h b/src/ChunkPrint.h index 103d21e..47988e1 100644 --- a/src/ChunkPrint.h +++ b/src/ChunkPrint.h @@ -12,7 +12,6 @@ class ChunkPrint : public Print { public: ChunkPrint(uint8_t* destination, size_t from, size_t len); - virtual ~ChunkPrint() {} size_t write(uint8_t c); size_t write(const uint8_t* buffer, size_t size) { return this->Print::write(buffer, size); } }; diff --git a/src/ESPAsyncWebServer.h b/src/ESPAsyncWebServer.h index dfaef9c..e58a155 100644 --- a/src/ESPAsyncWebServer.h +++ b/src/ESPAsyncWebServer.h @@ -48,10 +48,10 @@ #include "literals.h" -#define ASYNCWEBSERVER_VERSION "3.3.7" +#define ASYNCWEBSERVER_VERSION "3.3.23" #define ASYNCWEBSERVER_VERSION_MAJOR 3 #define ASYNCWEBSERVER_VERSION_MINOR 3 -#define ASYNCWEBSERVER_VERSION_REVISION 7 +#define ASYNCWEBSERVER_VERSION_REVISION 23 #define ASYNCWEBSERVER_FORK_mathieucarbou #ifdef ASYNCWEBSERVER_REGEX @@ -140,7 +140,6 @@ class AsyncWebHeader { String _value; public: - AsyncWebHeader() = default; AsyncWebHeader(const AsyncWebHeader&) = default; AsyncWebHeader(const char* name, const char* value) : _name(name), _value(value) {} AsyncWebHeader(const String& name, const String& value) : _name(name), _value(value) {} @@ -166,11 +165,12 @@ typedef enum { RCT_NOT_USED = -1, // this enum is similar to Arduino WebServer's AsyncAuthType and PsychicHttp typedef enum { - AUTH_NONE = 0, - AUTH_BASIC, - AUTH_DIGEST, - AUTH_BEARER, - AUTH_OTHER, + AUTH_NONE = 0, // always allow + AUTH_BASIC = 1, + AUTH_DIGEST = 2, + AUTH_BEARER = 3, + AUTH_OTHER = 4, + AUTH_DENIED = 255, // always returns 401 } AsyncAuthType; typedef std::function AwsResponseFiller; @@ -264,23 +264,21 @@ class AsyncWebServerRequest { size_t contentLength() const { return _contentLength; } bool multipart() const { return _isMultipart; } -#ifndef ESP8266 const char* methodToString() const; const char* requestedConnTypeToString() const; -#else - const __FlashStringHelper* methodToString() const; - const __FlashStringHelper* requestedConnTypeToString() const; -#endif RequestedConnectionType requestedConnType() const { return _reqconntype; } - bool isExpectedRequestedConnType(RequestedConnectionType erct1, RequestedConnectionType erct2 = RCT_NOT_USED, RequestedConnectionType erct3 = RCT_NOT_USED); + bool isExpectedRequestedConnType(RequestedConnectionType erct1, RequestedConnectionType erct2 = RCT_NOT_USED, RequestedConnectionType erct3 = RCT_NOT_USED) const; + bool isWebSocketUpgrade() const { return _method == HTTP_GET && isExpectedRequestedConnType(RCT_WS); } + bool isSSE() const { return _method == HTTP_GET && isExpectedRequestedConnType(RCT_EVENT); } + bool isHTTP() const { return isExpectedRequestedConnType(RCT_DEFAULT, RCT_HTTP); } void onDisconnect(ArDisconnectHandler fn); // hash is the string representation of: // base64(user:pass) for basic or // user:realm:md5(user:realm:pass) for digest - bool authenticate(const char* hash); - bool authenticate(const char* username, const char* credentials, const char* realm = NULL, bool isHash = false); + bool authenticate(const char* hash) const; + bool authenticate(const char* username, const char* credentials, const char* realm = NULL, bool isHash = false) const; void requestAuthentication(const char* realm = nullptr, bool isDigest = true) { requestAuthentication(isDigest ? AsyncAuthType::AUTH_DIGEST : AsyncAuthType::AUTH_BASIC, realm); } void requestAuthentication(AsyncAuthType method, const char* realm = nullptr, const char* _authFailMsg = nullptr); @@ -523,9 +521,7 @@ using ArMiddlewareCallback = std::function& getHeaders() const { return _headers; } #ifndef ESP8266 @@ -794,7 +797,7 @@ class AsyncWebServerResponse { _assembleHead(buffer, version); return buffer; } - virtual void _assembleHead(String& buffer, uint8_t version); + void _assembleHead(String& buffer, uint8_t version); virtual bool _started() const; virtual bool _finished() const; diff --git a/src/Middleware.cpp b/src/Middleware.cpp index 1c36ef6..78cdfc8 100644 --- a/src/Middleware.cpp +++ b/src/Middleware.cpp @@ -66,7 +66,7 @@ void AuthenticationMiddleware::setPassword(const char* password) { void AuthenticationMiddleware::setPasswordHash(const char* hash) { _credentials = hash; - _hash = true; + _hash = _credentials.length(); _hasCreds = _username.length() && _credentials.length(); } @@ -95,13 +95,16 @@ bool AuthenticationMiddleware::generateHash() { } } -bool AuthenticationMiddleware::allowed(AsyncWebServerRequest* request) { +bool AuthenticationMiddleware::allowed(AsyncWebServerRequest* request) const { if (_authMethod == AsyncAuthType::AUTH_NONE) return true; - if (!_hasCreds) + if (_authMethod == AsyncAuthType::AUTH_DENIED) return false; + if (!_hasCreds) + return true; + return request->authenticate(_username.c_str(), _credentials.c_str(), _realm.c_str(), _hash); } @@ -192,16 +195,16 @@ void LoggingMiddleware::run(AsyncWebServerRequest* request, ArMiddlewareNext nex } void CorsMiddleware::addCORSHeaders(AsyncWebServerResponse* response) { - response->addHeader(F("Access-Control-Allow-Origin"), _origin.c_str()); - response->addHeader(F("Access-Control-Allow-Methods"), _methods.c_str()); - response->addHeader(F("Access-Control-Allow-Headers"), _headers.c_str()); - response->addHeader(F("Access-Control-Allow-Credentials"), _credentials ? F("true") : F("false")); - response->addHeader(F("Access-Control-Max-Age"), String(_maxAge).c_str()); + response->addHeader(asyncsrv::T_CORS_ACAO, _origin.c_str()); + response->addHeader(asyncsrv::T_CORS_ACAM, _methods.c_str()); + response->addHeader(asyncsrv::T_CORS_ACAH, _headers.c_str()); + response->addHeader(asyncsrv::T_CORS_ACAC, _credentials ? asyncsrv::T_TRUE : asyncsrv::T_FALSE); + response->addHeader(asyncsrv::T_CORS_ACMA, String(_maxAge).c_str()); } void CorsMiddleware::run(AsyncWebServerRequest* request, ArMiddlewareNext next) { // Origin header ? => CORS handling - if (request->hasHeader(F("Origin"))) { + if (request->hasHeader(asyncsrv::T_CORS_O)) { // check if this is a preflight request => handle it and return if (request->method() == HTTP_OPTIONS) { AsyncWebServerResponse* response = request->beginResponse(200); @@ -247,7 +250,7 @@ void RateLimitMiddleware::run(AsyncWebServerRequest* request, ArMiddlewareNext n next(); } else { AsyncWebServerResponse* response = request->beginResponse(429); - response->addHeader(F("Retry-After"), retryAfterSeconds); + response->addHeader(asyncsrv::T_retry_after, retryAfterSeconds); request->send(response); } } diff --git a/src/WebAuthentication.cpp b/src/WebAuthentication.cpp index 304f258..ebcc38e 100644 --- a/src/WebAuthentication.cpp +++ b/src/WebAuthentication.cpp @@ -137,11 +137,7 @@ String generateDigestHash(const char* username, const char* password, const char return in; } -#ifndef ESP8266 bool checkDigestAuthentication(const char* header, const char* method, const char* username, const char* password, const char* realm, bool passwordIsHash, const char* nonce, const char* opaque, const char* uri) -#else -bool checkDigestAuthentication(const char* header, const __FlashStringHelper* method, const char* username, const char* password, const char* realm, bool passwordIsHash, const char* nonce, const char* opaque, const char* uri) -#endif { if (username == NULL || password == NULL || header == NULL || method == NULL) { // os_printf("AUTH FAIL: missing requred fields\n"); diff --git a/src/WebAuthentication.h b/src/WebAuthentication.h index a35d551..68bed0c 100644 --- a/src/WebAuthentication.h +++ b/src/WebAuthentication.h @@ -28,10 +28,6 @@ bool checkBasicAuthentication(const char* header, const char* username, const ch bool checkDigestAuthentication(const char* header, const char* method, const char* username, const char* password, const char* realm, bool passwordIsHash, const char* nonce, const char* opaque, const char* uri); -#ifdef ESP8266 -bool checkDigestAuthentication(const char* header, const __FlashStringHelper* method, const char* username, const char* password, const char* realm, bool passwordIsHash, const char* nonce, const char* opaque, const char* uri); -#endif - // for storing hashed versions on the device that can be authenticated against String generateDigestHash(const char* username, const char* password, const char* realm); diff --git a/src/WebHandlerImpl.h b/src/WebHandlerImpl.h index cb43f80..0eaec65 100644 --- a/src/WebHandlerImpl.h +++ b/src/WebHandlerImpl.h @@ -34,8 +34,8 @@ class AsyncStaticWebHandler : public AsyncWebHandler { using FS = fs::FS; private: - bool _getFile(AsyncWebServerRequest* request); - bool _fileExists(AsyncWebServerRequest* request, const String& path); + bool _getFile(AsyncWebServerRequest* request) const; + bool _searchFile(AsyncWebServerRequest* request, const String& path); uint8_t _countBits(const uint8_t value) const; protected: @@ -47,13 +47,13 @@ class AsyncStaticWebHandler : public AsyncWebHandler { String _last_modified; AwsTemplateProcessor _callback; bool _isDir; - bool _gzipFirst; - uint8_t _gzipStats; + bool _tryGzipFirst = true; public: AsyncStaticWebHandler(const char* uri, FS& fs, const char* path, const char* cache_control); - virtual bool canHandle(AsyncWebServerRequest* request) override final; - virtual void handleRequest(AsyncWebServerRequest* request) override final; + bool canHandle(AsyncWebServerRequest* request) const override final; + void handleRequest(AsyncWebServerRequest* request) override final; + AsyncStaticWebHandler& setTryGzipFirst(bool value); AsyncStaticWebHandler& setIsDir(bool isDir); AsyncStaticWebHandler& setDefaultFile(const char* filename); AsyncStaticWebHandler& setCacheControl(const char* cache_control); @@ -84,11 +84,11 @@ class AsyncCallbackWebHandler : public AsyncWebHandler { void onUpload(ArUploadHandlerFunction fn) { _onUpload = fn; } void onBody(ArBodyHandlerFunction fn) { _onBody = fn; } - virtual bool canHandle(AsyncWebServerRequest* request) override final; - virtual void handleRequest(AsyncWebServerRequest* request) override final; - virtual void handleUpload(AsyncWebServerRequest* request, const String& filename, size_t index, uint8_t* data, size_t len, bool final) override final; - virtual void handleBody(AsyncWebServerRequest* request, uint8_t* data, size_t len, size_t index, size_t total) override final; - virtual bool isRequestHandlerTrivial() override final { return !_onRequest; } + bool canHandle(AsyncWebServerRequest* request) const override final; + void handleRequest(AsyncWebServerRequest* request) override final; + void handleUpload(AsyncWebServerRequest* request, const String& filename, size_t index, uint8_t* data, size_t len, bool final) override final; + void handleBody(AsyncWebServerRequest* request, uint8_t* data, size_t len, size_t index, size_t total) override final; + bool isRequestHandlerTrivial() const override final { return !_onRequest; } }; #endif /* ASYNCWEBSERVERHANDLERIMPL_H_ */ diff --git a/src/WebHandlers.cpp b/src/WebHandlers.cpp index 7c3a7dc..335e1f2 100644 --- a/src/WebHandlers.cpp +++ b/src/WebHandlers.cpp @@ -27,7 +27,7 @@ AsyncWebHandler& AsyncWebHandler::setFilter(ArRequestFilterFunction fn) { _filter = fn; return *this; } -AsyncWebHandler& AsyncWebHandler::setAuthentication(const char* username, const char* password) { +AsyncWebHandler& AsyncWebHandler::setAuthentication(const char* username, const char* password, AsyncAuthType authMethod) { if (!_authMiddleware) { _authMiddleware = new AuthenticationMiddleware(); _authMiddleware->_freeOnRemoval = true; @@ -35,6 +35,7 @@ AsyncWebHandler& AsyncWebHandler::setAuthentication(const char* username, const } _authMiddleware->setUsername(username); _authMiddleware->setPassword(password); + _authMiddleware->setAuthType(authMethod); return *this; }; @@ -56,10 +57,11 @@ AsyncStaticWebHandler::AsyncStaticWebHandler(const char* uri, FS& fs, const char _uri = _uri.substring(0, _uri.length() - 1); if (_path[_path.length() - 1] == '/') _path = _path.substring(0, _path.length() - 1); +} - // Reset stats - _gzipFirst = false; - _gzipStats = 0xF8; +AsyncStaticWebHandler& AsyncStaticWebHandler::setTryGzipFirst(bool value) { + _tryGzipFirst = value; + return *this; } AsyncStaticWebHandler& AsyncStaticWebHandler::setIsDir(bool isDir) { @@ -104,14 +106,11 @@ AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified() { return setLastModified(last_modified); } #endif -bool AsyncStaticWebHandler::canHandle(AsyncWebServerRequest* request) { - if (request->method() != HTTP_GET || !request->url().startsWith(_uri) || !request->isExpectedRequestedConnType(RCT_DEFAULT, RCT_HTTP)) { - return false; - } - return _getFile(request); +bool AsyncStaticWebHandler::canHandle(AsyncWebServerRequest* request) const { + return request->isHTTP() && request->method() == HTTP_GET && request->url().startsWith(_uri) && _getFile(request); } -bool AsyncStaticWebHandler::_getFile(AsyncWebServerRequest* request) { +bool AsyncStaticWebHandler::_getFile(AsyncWebServerRequest* request) const { // Remove the found uri String path = request->url().substring(_uri.length()); @@ -121,7 +120,7 @@ bool AsyncStaticWebHandler::_getFile(AsyncWebServerRequest* request) { path = _path + path; // Do we have a file or .gz file - if (!canSkipFileCheck && _fileExists(request, path)) + if (!canSkipFileCheck && const_cast(this)->_searchFile(request, path)) return true; // Can't handle if not default file @@ -133,7 +132,7 @@ bool AsyncStaticWebHandler::_getFile(AsyncWebServerRequest* request) { path += String('/'); path += _default_file; - return _fileExists(request, path); + return const_cast(this)->_searchFile(request, path); } #ifdef ESP32 @@ -142,13 +141,13 @@ bool AsyncStaticWebHandler::_getFile(AsyncWebServerRequest* request) { #define FILE_IS_REAL(f) (f == true) #endif -bool AsyncStaticWebHandler::_fileExists(AsyncWebServerRequest* request, const String& path) { +bool AsyncStaticWebHandler::_searchFile(AsyncWebServerRequest* request, const String& path) { bool fileFound = false; bool gzipFound = false; - String gzip = path + F(".gz"); + String gzip = path + T__gz; - if (_gzipFirst) { + if (_tryGzipFirst) { if (_fs.exists(gzip)) { request->_tempFile = _fs.open(gzip, fs::FileOpenMode::read); gzipFound = FILE_IS_REAL(request->_tempFile); @@ -180,15 +179,6 @@ bool AsyncStaticWebHandler::_fileExists(AsyncWebServerRequest* request, const St char* _tempPath = (char*)malloc(pathLen + 1); snprintf_P(_tempPath, pathLen + 1, PSTR("%s"), path.c_str()); request->_tempObject = (void*)_tempPath; - - // Calculate gzip statistic - _gzipStats = (_gzipStats << 1) + (gzipFound ? 1 : 0); - if (_gzipStats == 0x00) - _gzipFirst = false; // All files are not gzip - else if (_gzipStats == 0xFF) - _gzipFirst = true; // All files are gzip - else - _gzipFirst = _countBits(_gzipStats) > 4; // IF we have more gzip files - try gzip first } return found; @@ -260,11 +250,8 @@ void AsyncCallbackWebHandler::setUri(const String& uri) { _isRegex = uri.startsWith("^") && uri.endsWith("$"); } -bool AsyncCallbackWebHandler::canHandle(AsyncWebServerRequest* request) { - if (!_onRequest) - return false; - - if (!(_method & request->method())) +bool AsyncCallbackWebHandler::canHandle(AsyncWebServerRequest* request) const { + if (!_onRequest || !request->isHTTP() || !(_method & request->method())) return false; #ifdef ASYNCWEBSERVER_REGEX diff --git a/src/WebRequest.cpp b/src/WebRequest.cpp index 242a111..09d6102 100644 --- a/src/WebRequest.cpp +++ b/src/WebRequest.cpp @@ -49,9 +49,9 @@ AsyncWebServerRequest::~AsyncWebServerRequest() { _pathParams.clear(); - if (_response != NULL) { - delete _response; - } + AsyncWebServerResponse* r = _response; + _response = NULL; + delete r; if (_tempObject != NULL) { free(_tempObject); @@ -280,38 +280,40 @@ bool AsyncWebServerRequest::_parseReqHeader() { } } else if (name.equalsIgnoreCase(T_Content_Length)) { _contentLength = atoi(value.c_str()); - } else if (name.equalsIgnoreCase(T_EXPECT) && value == T_100_CONTINUE) { + } else if (name.equalsIgnoreCase(T_EXPECT) && value.equalsIgnoreCase(T_100_CONTINUE)) { _expectingContinue = true; } else if (name.equalsIgnoreCase(T_AUTH)) { - if (value.length() > 5 && value.substring(0, 5).equalsIgnoreCase(T_BASIC)) { - _authorization = value.substring(6); - _authMethod = AsyncAuthType::AUTH_BASIC; - } else if (value.length() > 6 && value.substring(0, 6).equalsIgnoreCase(T_DIGEST)) { - _authMethod = AsyncAuthType::AUTH_DIGEST; - _authorization = value.substring(7); - } else if (value.length() > 6 && value.substring(0, 6).equalsIgnoreCase(T_BEARER)) { - _authMethod = AsyncAuthType::AUTH_BEARER; - _authorization = value.substring(7); - } else { + int space = value.indexOf(' '); + if (space == -1) { _authorization = value; _authMethod = AsyncAuthType::AUTH_OTHER; - } - } else { - if (name.equalsIgnoreCase(T_UPGRADE) && value.equalsIgnoreCase(T_WS)) { - // WebSocket request can be uniquely identified by header: [Upgrade: websocket] - _reqconntype = RCT_WS; - } else if (name.equalsIgnoreCase(T_ACCEPT)) { - String lowcase(value); - lowcase.toLowerCase(); -#ifndef ESP8266 - const char* substr = std::strstr(lowcase.c_str(), T_text_event_stream); -#else - const char* substr = std::strstr(lowcase.c_str(), String(T_text_event_stream).c_str()); -#endif - if (substr != NULL) { - // WebEvent request can be uniquely identified by header: [Accept: text/event-stream] - _reqconntype = RCT_EVENT; + } else { + String method = value.substring(0, space); + if (method.equalsIgnoreCase(T_BASIC)) { + _authMethod = AsyncAuthType::AUTH_BASIC; + } else if (method.equalsIgnoreCase(T_DIGEST)) { + _authMethod = AsyncAuthType::AUTH_DIGEST; + } else if (method.equalsIgnoreCase(T_BEARER)) { + _authMethod = AsyncAuthType::AUTH_BEARER; + } else { + _authMethod = AsyncAuthType::AUTH_OTHER; } + _authorization = value.substring(space + 1); + } + } else if (name.equalsIgnoreCase(T_UPGRADE) && value.equalsIgnoreCase(T_WS)) { + // WebSocket request can be uniquely identified by header: [Upgrade: websocket] + _reqconntype = RCT_WS; + } else if (name.equalsIgnoreCase(T_ACCEPT)) { + String lowcase(value); + lowcase.toLowerCase(); +#ifndef ESP8266 + const char* substr = std::strstr(lowcase.c_str(), T_text_event_stream); +#else + const char* substr = std::strstr(lowcase.c_str(), String(T_text_event_stream).c_str()); +#endif + if (substr != NULL) { + // WebEvent request can be uniquely identified by header: [Accept: text/event-stream] + _reqconntype = RCT_EVENT; } } _headers.emplace_back(name, value); @@ -779,7 +781,7 @@ void AsyncWebServerRequest::redirect(const char* url, int code) { send(response); } -bool AsyncWebServerRequest::authenticate(const char* username, const char* password, const char* realm, bool passwordIsHash) { +bool AsyncWebServerRequest::authenticate(const char* username, const char* password, const char* realm, bool passwordIsHash) const { if (_authorization.length()) { if (_authMethod == AsyncAuthType::AUTH_DIGEST) return checkDigestAuthentication(_authorization.c_str(), methodToString(), username, password, realm, passwordIsHash, NULL, NULL, NULL); @@ -791,7 +793,7 @@ bool AsyncWebServerRequest::authenticate(const char* username, const char* passw return false; } -bool AsyncWebServerRequest::authenticate(const char* hash) { +bool AsyncWebServerRequest::authenticate(const char* hash) const { if (!_authorization.length() || hash == NULL) return false; @@ -831,7 +833,7 @@ void AsyncWebServerRequest::requestAuthentication(AsyncAuthType method, const ch break; } case AsyncAuthType::AUTH_DIGEST: { - constexpr size_t len = strlen(T_DIGEST_) + strlen(T_realm__) + strlen(T_auth_nonce) + 32 + strlen(T__opaque) + 32 + 1; + size_t len = strlen(T_DIGEST_) + strlen(T_realm__) + strlen(T_auth_nonce) + 32 + strlen(T__opaque) + 32 + 1; String header; header.reserve(len + strlen(realm)); header.concat(T_DIGEST_); @@ -938,7 +940,6 @@ String AsyncWebServerRequest::urlDecode(const String& text) const { return decoded; } -#ifndef ESP8266 const char* AsyncWebServerRequest::methodToString() const { if (_method == HTTP_ANY) return T_ANY; @@ -958,29 +959,7 @@ const char* AsyncWebServerRequest::methodToString() const { return T_OPTIONS; return T_UNKNOWN; } -#else // ESP8266 -const __FlashStringHelper* AsyncWebServerRequest::methodToString() const { - if (_method == HTTP_ANY) - return FPSTR(T_ANY); - if (_method & HTTP_GET) - return FPSTR(T_GET); - if (_method & HTTP_POST) - return FPSTR(T_POST); - if (_method & HTTP_DELETE) - return FPSTR(T_DELETE); - if (_method & HTTP_PUT) - return FPSTR(T_PUT); - if (_method & HTTP_PATCH) - return FPSTR(T_PATCH); - if (_method & HTTP_HEAD) - return FPSTR(T_HEAD); - if (_method & HTTP_OPTIONS) - return FPSTR(T_OPTIONS); - return FPSTR(T_UNKNOWN); -} -#endif // ESP8266 -#ifndef ESP8266 const char* AsyncWebServerRequest::requestedConnTypeToString() const { switch (_reqconntype) { case RCT_NOT_USED: @@ -997,32 +976,9 @@ const char* AsyncWebServerRequest::requestedConnTypeToString() const { return T_ERROR; } } -#else // ESP8266 -const __FlashStringHelper* AsyncWebServerRequest::requestedConnTypeToString() const { - switch (_reqconntype) { - case RCT_NOT_USED: - return FPSTR(T_RCT_NOT_USED); - case RCT_DEFAULT: - return FPSTR(T_RCT_DEFAULT); - case RCT_HTTP: - return FPSTR(T_RCT_HTTP); - case RCT_WS: - return FPSTR(T_RCT_WS); - case RCT_EVENT: - return FPSTR(T_RCT_EVENT); - default: - return FPSTR(T_ERROR); - } -} -#endif // ESP8266 -bool AsyncWebServerRequest::isExpectedRequestedConnType(RequestedConnectionType erct1, RequestedConnectionType erct2, RequestedConnectionType erct3) { - bool res = false; - if ((erct1 != RCT_NOT_USED) && (erct1 == _reqconntype)) - res = true; - if ((erct2 != RCT_NOT_USED) && (erct2 == _reqconntype)) - res = true; - if ((erct3 != RCT_NOT_USED) && (erct3 == _reqconntype)) - res = true; - return res; +bool AsyncWebServerRequest::isExpectedRequestedConnType(RequestedConnectionType erct1, RequestedConnectionType erct2, RequestedConnectionType erct3) const { + return ((erct1 != RCT_NOT_USED) && (erct1 == _reqconntype)) || + ((erct2 != RCT_NOT_USED) && (erct2 == _reqconntype)) || + ((erct3 != RCT_NOT_USED) && (erct3 == _reqconntype)); } diff --git a/src/WebResponseImpl.h b/src/WebResponseImpl.h index a6f71bb..b58c5bb 100644 --- a/src/WebResponseImpl.h +++ b/src/WebResponseImpl.h @@ -26,9 +26,10 @@ #undef min #undef max #endif +#include "literals.h" +#include #include #include -#include "literals.h" // It is possible to restore these defines, but one can use _min and _max instead. Or std::min, std::max. @@ -39,9 +40,9 @@ class AsyncBasicResponse : public AsyncWebServerResponse { public: explicit AsyncBasicResponse(int code, const char* contentType = asyncsrv::empty, const char* content = asyncsrv::empty); AsyncBasicResponse(int code, const String& contentType, const String& content = emptyString) : AsyncBasicResponse(code, contentType.c_str(), content.c_str()) {} - void _respond(AsyncWebServerRequest* request); - size_t _ack(AsyncWebServerRequest* request, size_t len, uint32_t time); - bool _sourceValid() const { return true; } + void _respond(AsyncWebServerRequest* request) override final; + size_t _ack(AsyncWebServerRequest* request, size_t len, uint32_t time) override final; + bool _sourceValid() const override final { return true; } }; class AsyncAbstractResponse : public AsyncWebServerResponse { @@ -60,9 +61,10 @@ class AsyncAbstractResponse : public AsyncWebServerResponse { public: AsyncAbstractResponse(AwsTemplateProcessor callback = nullptr); - void _respond(AsyncWebServerRequest* request); - size_t _ack(AsyncWebServerRequest* request, size_t len, uint32_t time); - bool _sourceValid() const { return false; } + virtual ~AsyncAbstractResponse() {} + void _respond(AsyncWebServerRequest* request) override final; + size_t _ack(AsyncWebServerRequest* request, size_t len, uint32_t time) override final; + virtual bool _sourceValid() const { return false; } virtual size_t _fillBuffer(uint8_t* buf __attribute__((unused)), size_t maxLen __attribute__((unused))) { return 0; } }; @@ -85,9 +87,9 @@ class AsyncFileResponse : public AsyncAbstractResponse { AsyncFileResponse(FS& fs, const String& path, const String& contentType, bool download = false, AwsTemplateProcessor callback = nullptr) : AsyncFileResponse(fs, path, contentType.c_str(), download, callback) {} AsyncFileResponse(File content, const String& path, const char* contentType = asyncsrv::empty, bool download = false, AwsTemplateProcessor callback = nullptr); AsyncFileResponse(File content, const String& path, const String& contentType, bool download = false, AwsTemplateProcessor callack = nullptr) : AsyncFileResponse(content, path, contentType.c_str(), download, callack) {} - ~AsyncFileResponse(); - bool _sourceValid() const { return !!(_content); } - virtual size_t _fillBuffer(uint8_t* buf, size_t maxLen) override; + ~AsyncFileResponse() { _content.close(); } + bool _sourceValid() const override final { return !!(_content); } + size_t _fillBuffer(uint8_t* buf, size_t maxLen) override final; }; class AsyncStreamResponse : public AsyncAbstractResponse { @@ -97,8 +99,8 @@ class AsyncStreamResponse : public AsyncAbstractResponse { public: AsyncStreamResponse(Stream& stream, const char* contentType, size_t len, AwsTemplateProcessor callback = nullptr); AsyncStreamResponse(Stream& stream, const String& contentType, size_t len, AwsTemplateProcessor callback = nullptr) : AsyncStreamResponse(stream, contentType.c_str(), len, callback) {} - bool _sourceValid() const { return !!(_content); } - virtual size_t _fillBuffer(uint8_t* buf, size_t maxLen) override; + bool _sourceValid() const override final { return !!(_content); } + size_t _fillBuffer(uint8_t* buf, size_t maxLen) override final; }; class AsyncCallbackResponse : public AsyncAbstractResponse { @@ -109,8 +111,8 @@ class AsyncCallbackResponse : public AsyncAbstractResponse { public: AsyncCallbackResponse(const char* contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback = nullptr); AsyncCallbackResponse(const String& contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback = nullptr) : AsyncCallbackResponse(contentType.c_str(), len, callback, templateCallback) {} - bool _sourceValid() const { return !!(_content); } - virtual size_t _fillBuffer(uint8_t* buf, size_t maxLen) override; + bool _sourceValid() const override final { return !!(_content); } + size_t _fillBuffer(uint8_t* buf, size_t maxLen) override final; }; class AsyncChunkedResponse : public AsyncAbstractResponse { @@ -121,8 +123,8 @@ class AsyncChunkedResponse : public AsyncAbstractResponse { public: AsyncChunkedResponse(const char* contentType, AwsResponseFiller callback, AwsTemplateProcessor templateCallback = nullptr); AsyncChunkedResponse(const String& contentType, AwsResponseFiller callback, AwsTemplateProcessor templateCallback = nullptr) : AsyncChunkedResponse(contentType.c_str(), callback, templateCallback) {} - bool _sourceValid() const { return !!(_content); } - virtual size_t _fillBuffer(uint8_t* buf, size_t maxLen) override; + bool _sourceValid() const override final { return !!(_content); } + size_t _fillBuffer(uint8_t* buf, size_t maxLen) override final; }; class AsyncProgmemResponse : public AsyncAbstractResponse { @@ -133,22 +135,19 @@ class AsyncProgmemResponse : public AsyncAbstractResponse { public: AsyncProgmemResponse(int code, const char* contentType, const uint8_t* content, size_t len, AwsTemplateProcessor callback = nullptr); AsyncProgmemResponse(int code, const String& contentType, const uint8_t* content, size_t len, AwsTemplateProcessor callback = nullptr) : AsyncProgmemResponse(code, contentType.c_str(), content, len, callback) {} - bool _sourceValid() const { return true; } - virtual size_t _fillBuffer(uint8_t* buf, size_t maxLen) override; + bool _sourceValid() const override final { return true; } + size_t _fillBuffer(uint8_t* buf, size_t maxLen) override final; }; -class cbuf; - class AsyncResponseStream : public AsyncAbstractResponse, public Print { private: - std::unique_ptr _content; + StreamString _content; public: AsyncResponseStream(const char* contentType, size_t bufferSize); AsyncResponseStream(const String& contentType, size_t bufferSize) : AsyncResponseStream(contentType.c_str(), bufferSize) {} - ~AsyncResponseStream(); - bool _sourceValid() const { return (_state < RESPONSE_END); } - virtual size_t _fillBuffer(uint8_t* buf, size_t maxLen) override; + bool _sourceValid() const override final { return (_state < RESPONSE_END); } + size_t _fillBuffer(uint8_t* buf, size_t maxLen) override final; size_t write(const uint8_t* data, size_t len); size_t write(uint8_t data); using Print::write; diff --git a/src/WebResponses.cpp b/src/WebResponses.cpp index e7edf5e..7a26e92 100644 --- a/src/WebResponses.cpp +++ b/src/WebResponses.cpp @@ -20,7 +20,6 @@ */ #include "ESPAsyncWebServer.h" #include "WebResponseImpl.h" -#include "cbuf.h" using namespace asyncsrv; @@ -38,7 +37,6 @@ void* memchr(void* ptr, int ch, size_t count) { * */ -#ifndef ESP8266 const char* AsyncWebServerResponse::responseCodeToString(int code) { switch (code) { case 100: @@ -127,96 +125,6 @@ const char* AsyncWebServerResponse::responseCodeToString(int code) { return T_HTTP_CODE_ANY; } } -#else // ESP8266 -const __FlashStringHelper* AsyncWebServerResponse::responseCodeToString(int code) { - switch (code) { - case 100: - return FPSTR(T_HTTP_CODE_100); - case 101: - return FPSTR(T_HTTP_CODE_101); - case 200: - return FPSTR(T_HTTP_CODE_200); - case 201: - return FPSTR(T_HTTP_CODE_201); - case 202: - return FPSTR(T_HTTP_CODE_202); - case 203: - return FPSTR(T_HTTP_CODE_203); - case 204: - return FPSTR(T_HTTP_CODE_204); - case 205: - return FPSTR(T_HTTP_CODE_205); - case 206: - return FPSTR(T_HTTP_CODE_206); - case 300: - return FPSTR(T_HTTP_CODE_300); - case 301: - return FPSTR(T_HTTP_CODE_301); - case 302: - return FPSTR(T_HTTP_CODE_302); - case 303: - return FPSTR(T_HTTP_CODE_303); - case 304: - return FPSTR(T_HTTP_CODE_304); - case 305: - return FPSTR(T_HTTP_CODE_305); - case 307: - return FPSTR(T_HTTP_CODE_307); - case 400: - return FPSTR(T_HTTP_CODE_400); - case 401: - return FPSTR(T_HTTP_CODE_401); - case 402: - return FPSTR(T_HTTP_CODE_402); - case 403: - return FPSTR(T_HTTP_CODE_403); - case 404: - return FPSTR(T_HTTP_CODE_404); - case 405: - return FPSTR(T_HTTP_CODE_405); - case 406: - return FPSTR(T_HTTP_CODE_406); - case 407: - return FPSTR(T_HTTP_CODE_407); - case 408: - return FPSTR(T_HTTP_CODE_408); - case 409: - return FPSTR(T_HTTP_CODE_409); - case 410: - return FPSTR(T_HTTP_CODE_410); - case 411: - return FPSTR(T_HTTP_CODE_411); - case 412: - return FPSTR(T_HTTP_CODE_412); - case 413: - return FPSTR(T_HTTP_CODE_413); - case 414: - return FPSTR(T_HTTP_CODE_414); - case 415: - return FPSTR(T_HTTP_CODE_415); - case 416: - return FPSTR(T_HTTP_CODE_416); - case 417: - return FPSTR(T_HTTP_CODE_417); - case 429: - return FPSTR(T_HTTP_CODE_429); - case 500: - return FPSTR(T_HTTP_CODE_500); - case 501: - return FPSTR(T_HTTP_CODE_501); - case 502: - return FPSTR(T_HTTP_CODE_502); - case 503: - return FPSTR(T_HTTP_CODE_503); - case 504: - return FPSTR(T_HTTP_CODE_504); - case 505: - return FPSTR(T_HTTP_CODE_505); - default: - return FPSTR(T_HTTP_CODE_ANY); - } -} -#endif // ESP8266 AsyncWebServerResponse::AsyncWebServerResponse() : _code(0), _contentType(), _contentLength(0), _sendContentLength(true), _chunked(false), _headLength(0), _sentLength(0), _ackedLength(0), _writtenLength(0), _state(RESPONSE_SETUP) { @@ -225,8 +133,6 @@ AsyncWebServerResponse::AsyncWebServerResponse() } } -AsyncWebServerResponse::~AsyncWebServerResponse() = default; - void AsyncWebServerResponse::setCode(int code) { if (_state == RESPONSE_SETUP) _code = code; @@ -648,11 +554,6 @@ size_t AsyncAbstractResponse::_fillBufferAndProcessTemplates(uint8_t* data, size * File Response * */ -AsyncFileResponse::~AsyncFileResponse() { - if (_content) - _content.close(); -} - void AsyncFileResponse::_setContentTypeFromPath(const String& path) { #if HAVE_EXTERN_GET_Content_Type_FUNCTION #ifndef ESP8266 @@ -868,24 +769,17 @@ AsyncResponseStream::AsyncResponseStream(const char* contentType, size_t bufferS _code = 200; _contentLength = 0; _contentType = contentType; - _content = std::unique_ptr(new cbuf(bufferSize)); // std::make_unique(bufferSize); + _content.reserve(bufferSize); } -AsyncResponseStream::~AsyncResponseStream() = default; - size_t AsyncResponseStream::_fillBuffer(uint8_t* buf, size_t maxLen) { - return _content->read((char*)buf, maxLen); + return _content.readBytes((char*)buf, maxLen); } size_t AsyncResponseStream::write(const uint8_t* data, size_t len) { if (_started()) return 0; - - if (len > _content->room()) { - size_t needed = len - _content->room(); - _content->resizeAdd(needed); - } - size_t written = _content->write((const char*)data, len); + size_t written = _content.write(data, len); _contentLength += written; return written; } diff --git a/src/literals.h b/src/literals.h index 2300b4a..6782390 100644 --- a/src/literals.h +++ b/src/literals.h @@ -2,346 +2,181 @@ namespace asyncsrv { -static constexpr const char* empty = ""; + static constexpr const char* empty = ""; -#ifndef ESP8622 -static constexpr const char* T_100_CONTINUE = "100-continue"; -static constexpr const char* T_ACCEPT = "Accept"; -static constexpr const char* T_Accept_Ranges = "Accept-Ranges"; -static constexpr const char* T_app_xform_urlencoded = "application/x-www-form-urlencoded"; -static constexpr const char* T_AUTH = "Authorization"; -static constexpr const char* T_BASIC = "Basic"; -static constexpr const char* T_BASIC_REALM = "Basic realm=\""; -static constexpr const char* T_LOGIN_REQ = "Login Required"; -static constexpr const char* T_BODY = "body"; -static constexpr const char* T_Cache_Control = "Cache-Control"; -static constexpr const char* T_chunked = "chunked"; -static constexpr const char* T_close = "close"; -static constexpr const char* T_Connection = "Connection"; -static constexpr const char* T_Content_Disposition = "Content-Disposition"; -static constexpr const char* T_Content_Encoding = "Content-Encoding"; -static constexpr const char* T_Content_Length = "Content-Length"; -static constexpr const char* T_Content_Type = "Content-Type"; -static constexpr const char* T_Cookie = "Cookie"; -static constexpr const char* T_DIGEST = "Digest"; -static constexpr const char* T_DIGEST_ = "Digest "; -static constexpr const char* T_BEARER = "Bearer"; -static constexpr const char* T_ETag = "ETag"; -static constexpr const char* T_EXPECT = "Expect"; -static constexpr const char* T_HTTP_1_0 = "HTTP/1.0"; -static constexpr const char* T_HTTP_100_CONT = "HTTP/1.1 100 Continue\r\n\r\n"; -static constexpr const char* T_IMS = "If-Modified-Since"; -static constexpr const char* T_INM = "If-None-Match"; -static constexpr const char* T_keep_alive = "keep-alive"; -static constexpr const char* T_Last_Event_ID = "Last-Event-ID"; -static constexpr const char* T_Last_Modified = "Last-Modified"; -static constexpr const char* T_LOCATION = "Location"; -static constexpr const char* T_MULTIPART_ = "multipart/"; -static constexpr const char* T_no_cache = "no-cache"; -static constexpr const char* T_none = "none"; -static constexpr const char* T_UPGRADE = "Upgrade"; -static constexpr const char* T_WS = "websocket"; -static constexpr const char* T_WWW_AUTH = "WWW-Authenticate"; -static constexpr const char* T_Transfer_Encoding = "Transfer-Encoding"; + static constexpr const char* T__opaque = "\", opaque=\""; + static constexpr const char* T_100_CONTINUE = "100-continue"; + static constexpr const char* T_13 = "13"; + static constexpr const char* T_ACCEPT = "accept"; + static constexpr const char* T_Accept_Ranges = "accept-ranges"; + static constexpr const char* T_app_xform_urlencoded = "application/x-www-form-urlencoded"; + static constexpr const char* T_AUTH = "authorization"; + static constexpr const char* T_auth_nonce = "\", qop=\"auth\", nonce=\""; + static constexpr const char* T_BASIC = "basic"; + static constexpr const char* T_BASIC_REALM = "basic realm=\""; + static constexpr const char* T_BEARER = "bearer"; + static constexpr const char* T_BODY = "body"; + static constexpr const char* T_Cache_Control = "cache-control"; + static constexpr const char* T_chunked = "chunked"; + static constexpr const char* T_close = "close"; + static constexpr const char* T_cnonce = "cnonce"; + static constexpr const char* T_Connection = "connection"; + static constexpr const char* T_Content_Disposition = "content-disposition"; + static constexpr const char* T_Content_Encoding = "content-encoding"; + static constexpr const char* T_Content_Length = "content-length"; + static constexpr const char* T_Content_Type = "content-type"; + static constexpr const char* T_Cookie = "cookie"; + static constexpr const char* T_CORS_ACAC = "access-control-allow-credentials"; + static constexpr const char* T_CORS_ACAH = "access-control-allow-headers"; + static constexpr const char* T_CORS_ACAM = "access-control-allow-methods"; + static constexpr const char* T_CORS_ACAO = "access-control-allow-origin"; + static constexpr const char* T_CORS_ACMA = "access-control-max-age"; + static constexpr const char* T_CORS_O = "origin"; + static constexpr const char* T_data_ = "data: "; + static constexpr const char* T_DIGEST = "digest"; + static constexpr const char* T_DIGEST_ = "digest "; + static constexpr const char* T_ETag = "etag"; + static constexpr const char* T_event_ = "event: "; + static constexpr const char* T_EXPECT = "expect"; + static constexpr const char* T_FALSE = "false"; + static constexpr const char* T_filename = "filename"; + static constexpr const char* T_gzip = "gzip"; + static constexpr const char* T_Host = "host"; + static constexpr const char* T_HTTP_1_0 = "HTTP/1.0"; + static constexpr const char* T_HTTP_100_CONT = "HTTP/1.1 100 Continue\r\n\r\n"; + static constexpr const char* T_id__ = "id: "; + static constexpr const char* T_IMS = "if-modified-since"; + static constexpr const char* T_INM = "if-none-match"; + static constexpr const char* T_keep_alive = "keep-alive"; + static constexpr const char* T_Last_Event_ID = "last-event-id"; + static constexpr const char* T_Last_Modified = "last-modified"; + static constexpr const char* T_LOCATION = "location"; + static constexpr const char* T_LOGIN_REQ = "Login Required"; + static constexpr const char* T_MULTIPART_ = "multipart/"; + static constexpr const char* T_name = "name"; + static constexpr const char* T_nc = "nc"; + static constexpr const char* T_no_cache = "no-cache"; + static constexpr const char* T_nonce = "nonce"; + static constexpr const char* T_none = "none"; + static constexpr const char* T_opaque = "opaque"; + static constexpr const char* T_qop = "qop"; + static constexpr const char* T_realm = "realm"; + static constexpr const char* T_realm__ = "realm=\""; + static constexpr const char* T_response = "response"; + static constexpr const char* T_retry_ = "retry: "; + static constexpr const char* T_retry_after = "retry-after"; + static constexpr const char* T_rn = "\r\n"; + static constexpr const char* T_rnrn = "\r\n\r\n"; + static constexpr const char* T_Transfer_Encoding = "transfer-encoding"; + static constexpr const char* T_TRUE = "true"; + static constexpr const char* T_UPGRADE = "upgrade"; + static constexpr const char* T_uri = "uri"; + static constexpr const char* T_username = "username"; + static constexpr const char* T_WS = "websocket"; + static constexpr const char* T_WWW_AUTH = "www-authenticate"; -// HTTP Methods -static constexpr const char* T_ANY = "ANY"; -static constexpr const char* T_GET = "GET"; -static constexpr const char* T_POST = "POST"; -static constexpr const char* T_PUT = "PUT"; -static constexpr const char* T_DELETE = "DELETE"; -static constexpr const char* T_PATCH = "PATCH"; -static constexpr const char* T_HEAD = "HEAD"; -static constexpr const char* T_OPTIONS = "OPTIONS"; -static constexpr const char* T_UNKNOWN = "UNKNOWN"; + // HTTP Methods -// Req content types -static constexpr const char* T_RCT_NOT_USED = "RCT_NOT_USED"; -static constexpr const char* T_RCT_DEFAULT = "RCT_DEFAULT"; -static constexpr const char* T_RCT_HTTP = "RCT_HTTP"; -static constexpr const char* T_RCT_WS = "RCT_WS"; -static constexpr const char* T_RCT_EVENT = "RCT_EVENT"; -static constexpr const char* T_ERROR = "ERROR"; + static constexpr const char* T_ANY = "ANY"; + static constexpr const char* T_GET = "GET"; + static constexpr const char* T_POST = "POST"; + static constexpr const char* T_PUT = "PUT"; + static constexpr const char* T_DELETE = "DELETE"; + static constexpr const char* T_PATCH = "PATCH"; + static constexpr const char* T_HEAD = "HEAD"; + static constexpr const char* T_OPTIONS = "OPTIONS"; + static constexpr const char* T_UNKNOWN = "UNKNOWN"; -// extentions & MIME-Types -static constexpr const char* T__css = ".css"; -static constexpr const char* T__eot = ".eot"; -static constexpr const char* T__gif = ".gif"; -static constexpr const char* T__gz = ".gz"; -static constexpr const char* T__htm = ".htm"; -static constexpr const char* T__html = ".html"; -static constexpr const char* T__ico = ".ico"; -static constexpr const char* T__jpg = ".jpg"; -static constexpr const char* T__js = ".js"; -static constexpr const char* T__json = ".json"; -static constexpr const char* T__pdf = ".pdf"; -static constexpr const char* T__png = ".png"; -static constexpr const char* T__svg = ".svg"; -static constexpr const char* T__ttf = ".ttf"; -static constexpr const char* T__woff = ".woff"; -static constexpr const char* T__woff2 = ".woff2"; -static constexpr const char* T__xml = ".xml"; -static constexpr const char* T__zip = ".zip"; -static constexpr const char* T_application_javascript = "application/javascript"; -static constexpr const char* T_application_json = "application/json"; -static constexpr const char* T_application_msgpack = "application/msgpack"; -static constexpr const char* T_application_pdf = "application/pdf"; -static constexpr const char* T_application_x_gzip = "application/x-gzip"; -static constexpr const char* T_application_zip = "application/zip"; -static constexpr const char* T_font_eot = "font/eot"; -static constexpr const char* T_font_ttf = "font/ttf"; -static constexpr const char* T_font_woff = "font/woff"; -static constexpr const char* T_font_woff2 = "font/woff2"; -static constexpr const char* T_image_gif = "image/gif"; -static constexpr const char* T_image_jpeg = "image/jpeg"; -static constexpr const char* T_image_png = "image/png"; -static constexpr const char* T_image_svg_xml = "image/svg+xml"; -static constexpr const char* T_image_x_icon = "image/x-icon"; -static constexpr const char* T_text_css = "text/css"; -static constexpr const char* T_text_event_stream = "text/event-stream"; -static constexpr const char* T_text_html = "text/html"; -static constexpr const char* T_text_plain = "text/plain"; -static constexpr const char* T_text_xml = "text/xml"; + // Req content types + static constexpr const char* T_RCT_NOT_USED = "RCT_NOT_USED"; + static constexpr const char* T_RCT_DEFAULT = "RCT_DEFAULT"; + static constexpr const char* T_RCT_HTTP = "RCT_HTTP"; + static constexpr const char* T_RCT_WS = "RCT_WS"; + static constexpr const char* T_RCT_EVENT = "RCT_EVENT"; + static constexpr const char* T_ERROR = "ERROR"; -// Responce codes -static constexpr const char* T_HTTP_CODE_100 = "Continue"; -static constexpr const char* T_HTTP_CODE_101 = "Switching Protocols"; -static constexpr const char* T_HTTP_CODE_200 = "OK"; -static constexpr const char* T_HTTP_CODE_201 = "Created"; -static constexpr const char* T_HTTP_CODE_202 = "Accepted"; -static constexpr const char* T_HTTP_CODE_203 = "Non-Authoritative Information"; -static constexpr const char* T_HTTP_CODE_204 = "No Content"; -static constexpr const char* T_HTTP_CODE_205 = "Reset Content"; -static constexpr const char* T_HTTP_CODE_206 = "Partial Content"; -static constexpr const char* T_HTTP_CODE_300 = "Multiple Choices"; -static constexpr const char* T_HTTP_CODE_301 = "Moved Permanently"; -static constexpr const char* T_HTTP_CODE_302 = "Found"; -static constexpr const char* T_HTTP_CODE_303 = "See Other"; -static constexpr const char* T_HTTP_CODE_304 = "Not Modified"; -static constexpr const char* T_HTTP_CODE_305 = "Use Proxy"; -static constexpr const char* T_HTTP_CODE_307 = "Temporary Redirect"; -static constexpr const char* T_HTTP_CODE_400 = "Bad Request"; -static constexpr const char* T_HTTP_CODE_401 = "Unauthorized"; -static constexpr const char* T_HTTP_CODE_402 = "Payment Required"; -static constexpr const char* T_HTTP_CODE_403 = "Forbidden"; -static constexpr const char* T_HTTP_CODE_404 = "Not Found"; -static constexpr const char* T_HTTP_CODE_405 = "Method Not Allowed"; -static constexpr const char* T_HTTP_CODE_406 = "Not Acceptable"; -static constexpr const char* T_HTTP_CODE_407 = "Proxy Authentication Required"; -static constexpr const char* T_HTTP_CODE_408 = "Request Time-out"; -static constexpr const char* T_HTTP_CODE_409 = "Conflict"; -static constexpr const char* T_HTTP_CODE_410 = "Gone"; -static constexpr const char* T_HTTP_CODE_411 = "Length Required"; -static constexpr const char* T_HTTP_CODE_412 = "Precondition Failed"; -static constexpr const char* T_HTTP_CODE_413 = "Request Entity Too Large"; -static constexpr const char* T_HTTP_CODE_414 = "Request-URI Too Large"; -static constexpr const char* T_HTTP_CODE_415 = "Unsupported Media Type"; -static constexpr const char* T_HTTP_CODE_416 = "Requested range not satisfiable"; -static constexpr const char* T_HTTP_CODE_417 = "Expectation Failed"; -static constexpr const char* T_HTTP_CODE_429 = "Too Many Requests"; -static constexpr const char* T_HTTP_CODE_500 = "Internal Server Error"; -static constexpr const char* T_HTTP_CODE_501 = "Not Implemented"; -static constexpr const char* T_HTTP_CODE_502 = "Bad Gateway"; -static constexpr const char* T_HTTP_CODE_503 = "Service Unavailable"; -static constexpr const char* T_HTTP_CODE_504 = "Gateway Time-out"; -static constexpr const char* T_HTTP_CODE_505 = "HTTP Version not supported"; -static constexpr const char* T_HTTP_CODE_ANY = "Unknown code"; + // extentions & MIME-Types + static constexpr const char* T__css = ".css"; + static constexpr const char* T__eot = ".eot"; + static constexpr const char* T__gif = ".gif"; + static constexpr const char* T__gz = ".gz"; + static constexpr const char* T__htm = ".htm"; + static constexpr const char* T__html = ".html"; + static constexpr const char* T__ico = ".ico"; + static constexpr const char* T__jpg = ".jpg"; + static constexpr const char* T__js = ".js"; + static constexpr const char* T__json = ".json"; + static constexpr const char* T__pdf = ".pdf"; + static constexpr const char* T__png = ".png"; + static constexpr const char* T__svg = ".svg"; + static constexpr const char* T__ttf = ".ttf"; + static constexpr const char* T__woff = ".woff"; + static constexpr const char* T__woff2 = ".woff2"; + static constexpr const char* T__xml = ".xml"; + static constexpr const char* T__zip = ".zip"; + static constexpr const char* T_application_javascript = "application/javascript"; + static constexpr const char* T_application_json = "application/json"; + static constexpr const char* T_application_msgpack = "application/msgpack"; + static constexpr const char* T_application_pdf = "application/pdf"; + static constexpr const char* T_application_x_gzip = "application/x-gzip"; + static constexpr const char* T_application_zip = "application/zip"; + static constexpr const char* T_font_eot = "font/eot"; + static constexpr const char* T_font_ttf = "font/ttf"; + static constexpr const char* T_font_woff = "font/woff"; + static constexpr const char* T_font_woff2 = "font/woff2"; + static constexpr const char* T_image_gif = "image/gif"; + static constexpr const char* T_image_jpeg = "image/jpeg"; + static constexpr const char* T_image_png = "image/png"; + static constexpr const char* T_image_svg_xml = "image/svg+xml"; + static constexpr const char* T_image_x_icon = "image/x-icon"; + static constexpr const char* T_text_css = "text/css"; + static constexpr const char* T_text_event_stream = "text/event-stream"; + static constexpr const char* T_text_html = "text/html"; + static constexpr const char* T_text_plain = "text/plain"; + static constexpr const char* T_text_xml = "text/xml"; -// other -static constexpr const char* T__opaque = "\", opaque=\""; -static constexpr const char* T_13 = "13"; -static constexpr const char* T_auth_nonce = "\", qop=\"auth\", nonce=\""; -static constexpr const char* T_cnonce = "cnonce"; -static constexpr const char* T_data_ = "data: "; -static constexpr const char* T_event_ = "event: "; -static constexpr const char* T_filename = "filename"; -static constexpr const char* T_gzip = "gzip"; -static constexpr const char* T_Host = "Host"; -static constexpr const char* T_id__ = "id: "; -static constexpr const char* T_name = "name"; -static constexpr const char* T_nc = "nc"; -static constexpr const char* T_nonce = "nonce"; -static constexpr const char* T_opaque = "opaque"; -static constexpr const char* T_qop = "qop"; -static constexpr const char* T_realm = "realm"; -static constexpr const char* T_realm__ = "realm=\""; -static constexpr const char* T_response = "response"; -static constexpr const char* T_retry_ = "retry: "; -static constexpr const char* T_rn = "\r\n"; -static constexpr const char* T_rnrn = "\r\n\r\n"; -static constexpr const char* T_uri = "uri"; -static constexpr const char* T_username = "username"; + // Responce codes + static constexpr const char* T_HTTP_CODE_100 = "Continue"; + static constexpr const char* T_HTTP_CODE_101 = "Switching Protocols"; + static constexpr const char* T_HTTP_CODE_200 = "OK"; + static constexpr const char* T_HTTP_CODE_201 = "Created"; + static constexpr const char* T_HTTP_CODE_202 = "Accepted"; + static constexpr const char* T_HTTP_CODE_203 = "Non-Authoritative Information"; + static constexpr const char* T_HTTP_CODE_204 = "No Content"; + static constexpr const char* T_HTTP_CODE_205 = "Reset Content"; + static constexpr const char* T_HTTP_CODE_206 = "Partial Content"; + static constexpr const char* T_HTTP_CODE_300 = "Multiple Choices"; + static constexpr const char* T_HTTP_CODE_301 = "Moved Permanently"; + static constexpr const char* T_HTTP_CODE_302 = "Found"; + static constexpr const char* T_HTTP_CODE_303 = "See Other"; + static constexpr const char* T_HTTP_CODE_304 = "Not Modified"; + static constexpr const char* T_HTTP_CODE_305 = "Use Proxy"; + static constexpr const char* T_HTTP_CODE_307 = "Temporary Redirect"; + static constexpr const char* T_HTTP_CODE_400 = "Bad Request"; + static constexpr const char* T_HTTP_CODE_401 = "Unauthorized"; + static constexpr const char* T_HTTP_CODE_402 = "Payment Required"; + static constexpr const char* T_HTTP_CODE_403 = "Forbidden"; + static constexpr const char* T_HTTP_CODE_404 = "Not Found"; + static constexpr const char* T_HTTP_CODE_405 = "Method Not Allowed"; + static constexpr const char* T_HTTP_CODE_406 = "Not Acceptable"; + static constexpr const char* T_HTTP_CODE_407 = "Proxy Authentication Required"; + static constexpr const char* T_HTTP_CODE_408 = "Request Time-out"; + static constexpr const char* T_HTTP_CODE_409 = "Conflict"; + static constexpr const char* T_HTTP_CODE_410 = "Gone"; + static constexpr const char* T_HTTP_CODE_411 = "Length Required"; + static constexpr const char* T_HTTP_CODE_412 = "Precondition Failed"; + static constexpr const char* T_HTTP_CODE_413 = "Request Entity Too Large"; + static constexpr const char* T_HTTP_CODE_414 = "Request-URI Too Large"; + static constexpr const char* T_HTTP_CODE_415 = "Unsupported Media Type"; + static constexpr const char* T_HTTP_CODE_416 = "Requested range not satisfiable"; + static constexpr const char* T_HTTP_CODE_417 = "Expectation Failed"; + static constexpr const char* T_HTTP_CODE_429 = "Too Many Requests"; + static constexpr const char* T_HTTP_CODE_500 = "Internal Server Error"; + static constexpr const char* T_HTTP_CODE_501 = "Not Implemented"; + static constexpr const char* T_HTTP_CODE_502 = "Bad Gateway"; + static constexpr const char* T_HTTP_CODE_503 = "Service Unavailable"; + static constexpr const char* T_HTTP_CODE_504 = "Gateway Time-out"; + static constexpr const char* T_HTTP_CODE_505 = "HTTP Version not supported"; + static constexpr const char* T_HTTP_CODE_ANY = "Unknown code"; - -#else // ESP8622 - -static const char T_100_CONTINUE[] PROGMEM = "100-continue"; -static const char T_ACCEPT[] PROGMEM = "Accept"; -static const char T_Accept_Ranges[] PROGMEM = "Accept-Ranges"; -static const char T_app_xform_urlencoded[] PROGMEM = "application/x-www-form-urlencoded"; -static const char T_AUTH[] PROGMEM = "Authorization"; -static const char T_BASIC[] PROGMEM = "Basic"; -static const char T_BASIC_REALM[] PROGMEM = "Basic realm=\""; -static const char T_LOGIN_REQ[] PROGMEM = "Login Required"; -static const char T_BODY[] PROGMEM = "body"; -static const char T_Cache_Control[] PROGMEM = "Cache-Control"; -static const char T_chunked[] PROGMEM = "chunked"; -static const char T_close[] PROGMEM = "close"; -static const char T_Connection[] PROGMEM = "Connection"; -static const char T_Content_Disposition[] PROGMEM = "Content-Disposition"; -static const char T_Content_Encoding[] PROGMEM = "Content-Encoding"; -static const char T_Content_Length[] PROGMEM = "Content-Length"; -static const char T_Content_Type[] PROGMEM = "Content-Type"; -static const char T_Cookie[] PROGMEM = "Cookie"; -static const char T_DIGEST[] PROGMEM = "Digest"; -static const char T_DIGEST_[] PROGMEM = "Digest "; -static const char T_BEARER[] PROGMEM = "Bearer"; -static const char T_ETag[] PROGMEM = "ETag"; -static const char T_EXPECT[] PROGMEM = "Expect"; -static const char T_HTTP_1_0[] PROGMEM = "HTTP/1.0"; -static const char T_HTTP_100_CONT[] PROGMEM = "HTTP/1.1 100 Continue\r\n\r\n"; -static const char T_IMS[] PROGMEM = "If-Modified-Since"; -static const char T_INM[] PROGMEM = "If-None-Match"; -static const char T_keep_alive[] PROGMEM = "keep-alive"; -static const char T_Last_Event_ID[] PROGMEM = "Last-Event-ID"; -static const char T_Last_Modified[] PROGMEM = "Last-Modified"; -static const char T_LOCATION[] PROGMEM = "Location"; -static const char T_MULTIPART_[] PROGMEM = "multipart/"; -static const char T_no_cache[] PROGMEM = "no-cache"; -static const char T_none[] PROGMEM = "none"; -static const char T_UPGRADE[] PROGMEM = "Upgrade"; -static const char T_WS[] PROGMEM = "websocket"; -static const char T_WWW_AUTH[] PROGMEM = "WWW-Authenticate"; -static const char T_Transfer_Encoding[] PROGMEM = "Transfer-Encoding"; - -// HTTP Methods -static const char T_ANY[] PROGMEM = "ANY"; -static const char T_GET[] PROGMEM = "GET"; -static const char T_POST[] PROGMEM = "POST"; -static const char T_PUT[] PROGMEM = "PUT"; -static const char T_DELETE[] PROGMEM = "DELETE"; -static const char T_PATCH[] PROGMEM = "PATCH"; -static const char T_HEAD[] PROGMEM = "HEAD"; -static const char T_OPTIONS[] PROGMEM = "OPTIONS"; -static const char T_UNKNOWN[] PROGMEM = "UNKNOWN"; - -// Req content types -static const char T_RCT_NOT_USED[] PROGMEM = "RCT_NOT_USED"; -static const char T_RCT_DEFAULT[] PROGMEM = "RCT_DEFAULT"; -static const char T_RCT_HTTP[] PROGMEM = "RCT_HTTP"; -static const char T_RCT_WS[] PROGMEM = "RCT_WS"; -static const char T_RCT_EVENT[] PROGMEM = "RCT_EVENT"; -static const char T_ERROR[] PROGMEM = "ERROR"; - -// extentions & MIME-Types -static const char T__css[] PROGMEM = ".css"; -static const char T__eot[] PROGMEM = ".eot"; -static const char T__gif[] PROGMEM = ".gif"; -static const char T__gz[] PROGMEM = ".gz"; -static const char T__htm[] PROGMEM = ".htm"; -static const char T__html[] PROGMEM = ".html"; -static const char T__ico[] PROGMEM = ".ico"; -static const char T__jpg[] PROGMEM = ".jpg"; -static const char T__js[] PROGMEM = ".js"; -static const char T__json[] PROGMEM = ".json"; -static const char T__pdf[] PROGMEM = ".pdf"; -static const char T__png[] PROGMEM = ".png"; -static const char T__svg[] PROGMEM = ".svg"; -static const char T__ttf[] PROGMEM = ".ttf"; -static const char T__woff[] PROGMEM = ".woff"; -static const char T__woff2[] PROGMEM = ".woff2"; -static const char T__xml[] PROGMEM = ".xml"; -static const char T__zip[] PROGMEM = ".zip"; -static const char T_application_javascript[] PROGMEM = "application/javascript"; -static const char T_application_json[] PROGMEM = "application/json"; -static const char T_application_msgpack[] PROGMEM = "application/msgpack"; -static const char T_application_pdf[] PROGMEM = "application/pdf"; -static const char T_application_x_gzip[] PROGMEM = "application/x-gzip"; -static const char T_application_zip[] PROGMEM = "application/zip"; -static const char T_font_eot[] PROGMEM = "font/eot"; -static const char T_font_ttf[] PROGMEM = "font/ttf"; -static const char T_font_woff[] PROGMEM = "font/woff"; -static const char T_font_woff2[] PROGMEM = "font/woff2"; -static const char T_image_gif[] PROGMEM = "image/gif"; -static const char T_image_jpeg[] PROGMEM = "image/jpeg"; -static const char T_image_png[] PROGMEM = "image/png"; -static const char T_image_svg_xml[] PROGMEM = "image/svg+xml"; -static const char T_image_x_icon[] PROGMEM = "image/x-icon"; -static const char T_text_css[] PROGMEM = "text/css"; -static const char T_text_event_stream[] PROGMEM = "text/event-stream"; -static const char T_text_html[] PROGMEM = "text/html"; -static const char T_text_plain[] PROGMEM = "text/plain"; -static const char T_text_xml[] PROGMEM = "text/xml"; - -// Responce codes -static const char T_HTTP_CODE_100[] PROGMEM = "Continue"; -static const char T_HTTP_CODE_101[] PROGMEM = "Switching Protocols"; -static const char T_HTTP_CODE_200[] PROGMEM = "OK"; -static const char T_HTTP_CODE_201[] PROGMEM = "Created"; -static const char T_HTTP_CODE_202[] PROGMEM = "Accepted"; -static const char T_HTTP_CODE_203[] PROGMEM = "Non-Authoritative Information"; -static const char T_HTTP_CODE_204[] PROGMEM = "No Content"; -static const char T_HTTP_CODE_205[] PROGMEM = "Reset Content"; -static const char T_HTTP_CODE_206[] PROGMEM = "Partial Content"; -static const char T_HTTP_CODE_300[] PROGMEM = "Multiple Choices"; -static const char T_HTTP_CODE_301[] PROGMEM = "Moved Permanently"; -static const char T_HTTP_CODE_302[] PROGMEM = "Found"; -static const char T_HTTP_CODE_303[] PROGMEM = "See Other"; -static const char T_HTTP_CODE_304[] PROGMEM = "Not Modified"; -static const char T_HTTP_CODE_305[] PROGMEM = "Use Proxy"; -static const char T_HTTP_CODE_307[] PROGMEM = "Temporary Redirect"; -static const char T_HTTP_CODE_400[] PROGMEM = "Bad Request"; -static const char T_HTTP_CODE_401[] PROGMEM = "Unauthorized"; -static const char T_HTTP_CODE_402[] PROGMEM = "Payment Required"; -static const char T_HTTP_CODE_403[] PROGMEM = "Forbidden"; -static const char T_HTTP_CODE_404[] PROGMEM = "Not Found"; -static const char T_HTTP_CODE_405[] PROGMEM = "Method Not Allowed"; -static const char T_HTTP_CODE_406[] PROGMEM = "Not Acceptable"; -static const char T_HTTP_CODE_407[] PROGMEM = "Proxy Authentication Required"; -static const char T_HTTP_CODE_408[] PROGMEM = "Request Time-out"; -static const char T_HTTP_CODE_409[] PROGMEM = "Conflict"; -static const char T_HTTP_CODE_410[] PROGMEM = "Gone"; -static const char T_HTTP_CODE_411[] PROGMEM = "Length Required"; -static const char T_HTTP_CODE_412[] PROGMEM = "Precondition Failed"; -static const char T_HTTP_CODE_413[] PROGMEM = "Request Entity Too Large"; -static const char T_HTTP_CODE_414[] PROGMEM = "Request-URI Too Large"; -static const char T_HTTP_CODE_415[] PROGMEM = "Unsupported Media Type"; -static const char T_HTTP_CODE_416[] PROGMEM = "Requested range not satisfiable"; -static const char T_HTTP_CODE_417[] PROGMEM = "Expectation Failed"; -static const char T_HTTP_CODE_429[] PROGMEM = "Too Many Requests"; -static const char T_HTTP_CODE_500[] PROGMEM = "Internal Server Error"; -static const char T_HTTP_CODE_501[] PROGMEM = "Not Implemented"; -static const char T_HTTP_CODE_502[] PROGMEM = "Bad Gateway"; -static const char T_HTTP_CODE_503[] PROGMEM = "Service Unavailable"; -static const char T_HTTP_CODE_504[] PROGMEM = "Gateway Time-out"; -static const char T_HTTP_CODE_505[] PROGMEM = "HTTP Version not supported"; -static const char T_HTTP_CODE_ANY[] PROGMEM = "Unknown code"; - -// other -static const char T__opaque[] PROGMEM = "\", opaque=\""; -static const char T_13[] PROGMEM = "13"; -static const char T_auth_nonce[] PROGMEM = "\", qop=\"auth\", nonce=\""; -static const char T_cnonce[] PROGMEM = "cnonce"; -static const char T_data_[] PROGMEM = "data: "; -static const char T_event_[] PROGMEM = "event: "; -static const char T_filename[] PROGMEM = "filename"; -static const char T_gzip[] PROGMEM = "gzip"; -static const char T_Host[] PROGMEM = "Host"; -static const char T_id__[] PROGMEM = "id: "; -static const char T_name[] PROGMEM = "name"; -static const char T_nc[] PROGMEM = "nc"; -static const char T_nonce[] PROGMEM = "nonce"; -static const char T_opaque[] PROGMEM = "opaque"; -static const char T_qop[] PROGMEM = "qop"; -static const char T_realm[] PROGMEM = "realm"; -static const char T_realm__[] PROGMEM = "realm=\""; -static const char T_response[] PROGMEM = "response"; -static const char T_retry_[] PROGMEM = "retry: "; -static const char T_rn[] PROGMEM = "\r\n"; -static const char T_rnrn[] PROGMEM = "\r\n\r\n"; -static const char T_uri[] PROGMEM = "uri"; -static const char T_username[] PROGMEM = "username"; - -#endif // ESP8622 - -} // namespace asyncsrv {} +} // namespace asyncsrv {}

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