forked from me-no-dev/ESPAsyncWebServer
Add HTTP/1.1 chunked response and allow stream and callback responses to not have content length
ContentLength and ContentType have setters (before you send the response)
This commit is contained in:
@@ -25,6 +25,7 @@ AsyncWebServerRequest::AsyncWebServerRequest(AsyncWebServer* s, AsyncClient* c)
|
||||
, _interestingHeaders(new StringArray())
|
||||
, _temp()
|
||||
, _parseState(0)
|
||||
, _version(0)
|
||||
, _method(HTTP_ANY)
|
||||
, _url()
|
||||
, _host()
|
||||
@@ -229,6 +230,9 @@ bool AsyncWebServerRequest::_parseReqHead(){
|
||||
}
|
||||
}
|
||||
|
||||
_temp = _temp.substring(_temp.indexOf(' ')+1);
|
||||
if(_temp.startsWith("HTTP/1.1"))
|
||||
_version = 1;
|
||||
_temp = String();
|
||||
return true;
|
||||
}
|
||||
@@ -620,6 +624,12 @@ AsyncWebServerResponse * AsyncWebServerRequest::beginResponse(String contentType
|
||||
return new AsyncCallbackResponse(contentType, len, callback);
|
||||
}
|
||||
|
||||
AsyncWebServerResponse * AsyncWebServerRequest::beginChunkedResponse(String contentType, AwsResponseFiller callback){
|
||||
if(_version)
|
||||
return new AsyncChunkedResponse(contentType, callback);
|
||||
return new AsyncCallbackResponse(contentType, 0, callback);
|
||||
}
|
||||
|
||||
AsyncResponseStream * AsyncWebServerRequest::beginResponseStream(String contentType, size_t len, size_t bufferSize){
|
||||
return new AsyncResponseStream(contentType, len, bufferSize);
|
||||
}
|
||||
|
Reference in New Issue
Block a user