forked from me-no-dev/ESPAsyncWebServer
fix chunked output
This commit is contained in:
@@ -248,7 +248,7 @@ request->send(response);
|
|||||||
### Chunked Response
|
### Chunked Response
|
||||||
Used when content length is unknown. Works best if the client supports HTTP/1.1
|
Used when content length is unknown. Works best if the client supports HTTP/1.1
|
||||||
```cpp
|
```cpp
|
||||||
AsyncWebServerResponse *response = request->beginChunkedResponse("text/plain", [](uint8_t buffer, size_t maxLen) -> size_t {
|
AsyncWebServerResponse *response = request->beginChunkedResponse("text/plain", [](uint8_t *buffer, size_t maxLen) -> size_t {
|
||||||
//Write up to "maxLen" bytes into "buffer" and return the amount written.
|
//Write up to "maxLen" bytes into "buffer" and return the amount written.
|
||||||
//You will be asked for more data until 0 is returned
|
//You will be asked for more data until 0 is returned
|
||||||
//Keep in mind that you can not delay or yield waiting for more data!
|
//Keep in mind that you can not delay or yield waiting for more data!
|
||||||
|
@@ -252,7 +252,7 @@ size_t AsyncAbstractResponse::_ack(AsyncWebServerRequest *request, size_t len, u
|
|||||||
char pre[6];
|
char pre[6];
|
||||||
sprintf(pre, "%x\r\n", readLen);
|
sprintf(pre, "%x\r\n", readLen);
|
||||||
size_t preLen = strlen(pre);
|
size_t preLen = strlen(pre);
|
||||||
memmove(buf+preLen, buf, preLen);
|
memmove(buf+preLen, buf, readLen);
|
||||||
for(size_t i=0; i<preLen; i++)
|
for(size_t i=0; i<preLen; i++)
|
||||||
buf[i] = pre[i];
|
buf[i] = pre[i];
|
||||||
outLen = preLen + readLen;
|
outLen = preLen + readLen;
|
||||||
|
Reference in New Issue
Block a user