Commit Graph

292 Commits

Author SHA1 Message Date
probonopd 09dde693ba Solve error "previous definition of 'class fs::File'" (#147)
As per https://github.com/me-no-dev/ESPAsyncWebServer/issues/111#issuecomment-288265916 by @boblemaire
2017-03-22 10:23:37 +01:00
sticilface 1b35f15ec2 Web Sockets memory improvements : shared message buffer, direct buffer access (#144)
* Add support for a MultiMessage where the buffer is shared between WS messages to multiple clients.
Add ability to create a WS buffer directly and write to it, saving duplication of message in RAM, then send it.  example below is an arduinoJson message.

```cpp
void sendDataWs(AsyncWebSocketClient * client)
{
    DynamicJsonBuffer jsonBuffer;
    JsonObject& root = jsonBuffer.createObject();
    root["a"] = "abc";
    root["b"] = "abcd";
    root["c"] = "abcde";
    root["d"] = "abcdef";
    root["e"] = "abcdefg";
    size_t len = root.measureLength();
    AsyncWebSocketMessageBuffer * buffer = ws.makeBuffer(len); //  creates a buffer (len + 1) for you.
    if (buffer) {
        root.printTo((char *)buffer->get(), len + 1);
        if (client) {
            client->text(buffer);
        } else {
            ws.textAll(buffer);
        }
    }
}
```

* Add example to readme.
2017-03-14 14:55:39 +01:00
sticilface b9641902bf Events Source Message Queue (#129)
* Events Source Message Queue
 - Fixes problem where events sent close together are silently dropped.

* Update AsyncEventSource.cpp

error
2017-03-11 09:57:37 +01:00
Zhenyu Wu fce6aad2c3 Remove Rx timeout constraint in the request response stage, fix premature connection termination (#121) 2017-03-05 20:15:25 +02:00
sticilface edf6c75f8c Fix memory leak in __flashString Web sockets implementation. (#136) 2017-03-05 20:07:17 +02:00
sticilface 3afc669f10 Flash String support (#137)
* Flash String support

* use strlen_P and strcpy_p
2017-03-05 20:06:57 +02:00
Tuan PM 9b66da2c92 Add basic auth for server static (#143)
* Add basic auth for server static

* Also effect to Websocket

* Add http basic auth for event source & document to README.md
2017-03-05 20:02:33 +02:00
Me No Dev bab5457584 Fix case where space is not enough for a chunk 2017-01-25 21:25:21 +02:00
Zhenyu Wu 213387b88f Convert resursive call to iterations, reduce stack usage (#120) 2017-01-22 12:47:21 +02:00
hreintke 1d66bbfc77 Adding example of global & class functions for request handler (#107)
* Adding example of global & class functions for request handler

* Make title the same as the one in the table of contents
2016-12-14 03:34:21 +02:00
Luc 5159d8b845 Fix #76 Problem uploading multiple files (#104) 2016-11-29 23:12:52 +02:00
Sakari Kapanen ea7b76b0ee Fix const correctness of _sourceValid (#100) 2016-11-28 22:00:33 +02:00
Me No Dev 9bdf7c42b4 Add Tinkerman (Xose Pérez) projects to README 2016-11-27 17:58:30 +02:00
Max Lunin a7c4dfb04f Template container instead of direct pointer manipulation. (#95)
* using Container instead ofdirect pointers list manipulation

* fixed different type of virtual methods.

* Fixed typo in conditional

* Renamed ListArray to LinkedList

* Const reference to String as method parameters to prevent additional copy and memory allocation when String passed by value

* fix 'min' redefinition

* removed #include <iterator>
begin/end methods it's enough for 'for( : )' loop
count() renamed to length()
spacing fixing

* Const reference to String as method parameters to prevent additional copy and memory allocation when String passed by value

* Fixed unused params warnings
2016-11-27 17:42:09 +02:00
me-no-dev 3e6e890808 fix indentation 2016-11-21 17:44:46 +02:00
me-no-dev 3cfb65f04d regenerate proper links 2016-11-21 17:41:34 +02:00
me-no-dev 5f062c7bc3 remove toc for now 2016-11-21 17:16:31 +02:00
Me No Dev 934937bcb4 Update README.md 2016-11-17 02:01:52 +02:00
me-no-dev 41c57bcdd1 add size to returned file data 2016-11-17 01:33:50 +02:00
Max Lunin 3eb639b027 Reset all handlers. This allowing to use same server few times (#93)
* Reset all handlers. This allowing to use same server few times during app life.
E.g. for WiFi manager when hardware sepups WiFi connection and as HTTP server during hardware life cycle
2016-11-17 01:16:58 +02:00
Me No Dev 03c61fab43 Update README.md
Add example how to scan WiFi Asynchronously
2016-11-05 12:35:58 +02:00
Me No Dev 49d5a24815 fix Digest authentication for IE 2016-10-18 16:30:14 +03:00
me-no-dev 0adc36b1f6 fix mistake 2016-09-23 21:56:28 +03:00
me-no-dev 1fd73a9262 disable timeout for web sockets and event source 2016-09-23 21:44:52 +03:00
me-no-dev a39051a2d5 Add SPIFFSEditor to the library 2016-09-23 15:11:50 +03:00
me-no-dev d935b1d740 close the file if left open and add timeout to clients 2016-09-23 13:48:35 +03:00
me-no-dev c2de999f03 fix broken uploads 2016-09-03 23:30:14 +03:00
Me No Dev b6c9ebd9e6 make headers work with ignoreCase
Connected to: https://github.com/me-no-dev/ESPAsyncWebServer/issues/64
Eliminates: https://github.com/me-no-dev/ESPAsyncWebServer/pull/70
2016-09-02 13:52:32 +03:00
Me No Dev 85cec3e543 Update example with new editor 2016-08-27 17:32:51 +03:00
Me No Dev 18478e6520 do not compile SSL if disabled 2016-08-26 02:44:20 +03:00
Me No Dev 9ae9976b05 return 304 if file uses cache and size has not changed 2016-08-25 22:29:27 +03:00
Me No Dev 1163808495 add some mime types and a commented implementation of etag for cache 2016-08-25 22:15:17 +03:00
Me No Dev a14e93dd84 Initial SSL Implementation 2016-08-24 22:32:27 +03:00
Me No Dev dab3077f2b pointless 2016-08-23 08:02:04 +03:00
Me No Dev 7110758b5a optimizations 2016-08-23 03:10:45 +03:00
Sergey Anisimov bfde9bc81a Passing String parameters by const ref. (#71) 2016-08-20 09:48:16 +03:00
me-no-dev 47111af967 remove esp31b compilation 2016-08-19 23:12:27 +03:00
Me No Dev 907e00ff4e Passing String parameters by const ref. (#69) 2016-08-19 22:22:47 +03:00
Me No Dev 7f9bdec0f9 use uint8_t to store WebRequestMethod (#68)
so we can have server.on("/foo", HTTP_GET | HTTP_POST,
[](AsyncWebServerRequest *request) {}) to handle multiple methods.

this also saves a bit memory, enums are stored in int, which is 32bit on
xtensa. since we only have 7 methods (plus HTTP_ANY for everything) we
only want 7 bit, so uint8_t is pretty sufficient.
2016-08-19 22:21:08 +03:00
Me No Dev 46d41ddcd4 Update for ESP32 RTOS SDK 3.0.0 2016-08-02 14:28:21 +03:00
Me No Dev fbb05a2765 Update README.md 2016-07-31 23:40:31 +03:00
Me No Dev 36b7b2c0a5 Update README.md
Add example web updater
2016-07-31 23:22:06 +03:00
Sergey Anisimov b3db252acb Passing String parameters by const ref. (#57) 2016-07-25 20:07:02 +03:00
Me No Dev cc38b8d57c fix some methods and add setCode to all responses 2016-07-22 00:03:12 +03:00
Me No Dev 431fbb2d90 fix wrong index searched by the example 2016-07-21 18:14:48 +03:00
Me No Dev d61cc2d130 Implement sending content from progmem
make the example editor run from progmem
2016-07-21 12:25:25 +03:00
Me No Dev 7a1fd02cce Add vzero to projects in readme 2016-07-15 09:32:39 +03:00
Me No Dev 933ac023cb Optimizations 2016-07-14 00:01:34 +03:00
Me No Dev 59e904362b fix some readme typos 2016-07-07 22:45:20 +03:00
Me No Dev b8ba1c885b Add EventSource::count() 2016-06-30 11:26:20 +03:00